:root{--leaf-600: #0c793d;--leaf-700: #0a6834;--leaf-100: #e7f5ec;--leaf-500: #12a150;--ocean-600: #1f6aa5;--ocean-700: #195a8c;--ocean-100: #e6f0f8;--lamp-500: #f5b400;--lamp-100: #fff4d6;--lamp-ink: #7a5200;--chili-600: #c4352f;--chili-100: #fde8e7;--rose-600: #c62f35;--rose-200: #f9cfcf;--rose-50: #fff2f2;--sky-600: #2563eb;--sky-100: #eaf0fd;--ink-900: #16181d;--ink-700: #3b4250;--ink-500: #646d7f;--steam-300: #dfe1dc;--steam-200: #edeeea;--steam-100: #f3f4f1;--paper: #f3f4f1;--surface: #ffffff;--bg: var(--paper);--panel: var(--surface);--text: var(--ink-900);--text-2: var(--ink-700);--muted: var(--ink-500);--line: var(--steam-200);--line-strong: var(--steam-300);--hover: var(--steam-100);--track: #e9ebe6;--primary: var(--brand-l, var(--ocean-600));--primary-hover: var(--brand-l-hover, var(--ocean-700));--primary-soft: var(--brand-l-soft, var(--ocean-100));--on-primary: var(--brand-l-on, #ffffff);--primary-deep: var(--brand-deep, var(--ocean-700));--toast-bg: var(--ink-900);--attention: var(--lamp-500);--attention-soft: var(--lamp-100);--attention-ink: var(--lamp-ink);--on-attention: #2b2000;--busy: var(--rose-600);--busy-soft: var(--rose-50);--busy-strong: var(--rose-200);--busy-ink: #a3242b;--info: var(--sky-600);--info-soft: var(--sky-100);--on-info: #ffffff;--danger: var(--chili-600);--danger-soft: var(--chili-100);--good: var(--leaf-600);--good-soft: var(--leaf-100);--good-dot: var(--leaf-500);--ticket: #fffdf8;--focus: #2563eb;--font-display: "Bricolage Grotesque", "Noto Sans Lao", system-ui, sans-serif;--font-body: "Noto Sans", "Noto Sans Lao", system-ui, -apple-system, "Segoe UI", sans-serif;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--t-xs: 12px;--t-sm: 14px;--t-md: 16px;--t-lg: 20px;--t-xl: 24px;--t-2xl: 32px;--t-3xl: 48px;--t-display: 56px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-pill: 999px;--shadow-pop: 0 12px 32px rgb(22 24 29 / .16);--shadow-card: 0 1px 2px rgb(22 24 29 / .04);--glow-attention: 0 0 0 3px var(--attention-soft);--ease: cubic-bezier(.2, .7, .2, 1);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #111317;--panel: #191c21;--text: #eceef2;--text-2: #c4c9d3;--muted: #959cab;--line: #272b33;--line-strong: #343944;--hover: #20242b;--track: #2a2e36;--primary: var(--brand-d, #5aa2dc);--primary-hover: var(--brand-d-hover, #74b2e3);--primary-soft: var(--brand-d-soft, #16324a);--on-primary: var(--brand-d-on, #0b1a28);--attention: #f5b400;--attention-soft: #3a2e0d;--attention-ink: #f8cf5c;--on-attention: #2b2000;--busy: #f0787d;--busy-soft: #2e1a1c;--busy-strong: #4a2226;--busy-ink: #ffd4d6;--info: #7aa5ff;--info-soft: #1b2740;--on-info: #0b1220;--danger: #ef7a72;--danger-soft: #3b1f1d;--good: #5baf81;--good-soft: #1d3327;--good-dot: #3fbf76;--shadow-card: 0 1px 2px rgb(0 0 0 / .4);--ticket: #1f2228;--focus: #7aa5ff;--toast-bg: #2b3038;color-scheme:dark}}:root[data-theme=dark]{--bg: #111317;--panel: #191c21;--text: #eceef2;--text-2: #c4c9d3;--muted: #959cab;--line: #272b33;--line-strong: #343944;--hover: #20242b;--track: #2a2e36;--primary: var(--brand-d, #5aa2dc);--primary-hover: var(--brand-d-hover, #74b2e3);--primary-soft: var(--brand-d-soft, #16324a);--on-primary: var(--brand-d-on, #0b1a28);--attention: #f5b400;--attention-soft: #3a2e0d;--attention-ink: #f8cf5c;--on-attention: #2b2000;--busy: #f0787d;--busy-soft: #2e1a1c;--busy-strong: #4a2226;--busy-ink: #ffd4d6;--info: #7aa5ff;--info-soft: #1b2740;--on-info: #0b1220;--danger: #ef7a72;--danger-soft: #3b1f1d;--good: #5baf81;--good-soft: #1d3327;--good-dot: #3fbf76;--shadow-card: 0 1px 2px rgb(0 0 0 / .4);--ticket: #1f2228;--focus: #7aa5ff;--toast-bg: #2b3038;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font:400 var(--t-md)/1.5 var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;margin:0;letter-spacing:-.01em}h1{font-size:var(--t-2xl);font-weight:800}h2{font-size:var(--t-xl);font-weight:700}h3{font-size:var(--t-lg);font-weight:700}:root[lang=lo] body{line-height:1.75}:root[lang=lo] h1,:root[lang=lo] h2,:root[lang=lo] h3,:root[lang=lo] h4{line-height:1.45;letter-spacing:0}.lang-toggle{gap:6px}.screen-tools{display:inline-flex;align-items:stretch;height:40px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--panel);overflow:hidden}.screen-tools .screen-tool{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:0;height:100%;padding:0 14px;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;font-size:var(--t-sm);font-weight:700;box-shadow:none;cursor:pointer;transition:background .15s var(--ease)}.screen-tools .screen-tool+.screen-tool{border-left:1px solid var(--line-strong)}.screen-tools .screen-tool:hover{background:var(--hover)}.screen-tools .screen-tool:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.screen-tools .fullscreen-btn,.screen-tools .theme-btn{width:44px;padding:0}.screen-tools .fullscreen-btn[aria-pressed=true]{background:var(--primary-soft);color:var(--primary)}@media(max-width:480px){.screen-tools .lang-short{display:none}.screen-tools .topbar-lang{width:44px;padding:0}.screen-tools .fullscreen-btn{display:none}}.account-photo{position:relative;flex:none;padding:0;border:0;border-radius:50%;background:none;cursor:pointer}.account-photo .avatar-lg{--av: 64px}.account-photo:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.account-photo:hover .avatar{filter:brightness(.9)}.account-photo:disabled{cursor:progress}.account-photo-badge{position:absolute;right:-2px;bottom:-2px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--hover);color:var(--text);border:2px solid var(--panel);box-shadow:0 0 0 1px var(--line-strong)}.account-photo-badge .spinner{width:14px;height:14px;border-width:2px}.account-head strong{font-size:var(--t-md)}p{margin:0}a{color:var(--primary)}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.muted{color:var(--muted)}.num{font-variant-numeric:tabular-nums}.row{display:flex;align-items:center;gap:var(--s2)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.stack{display:flex;flex-direction:column;gap:var(--s3)}.stack-lg{display:flex;flex-direction:column;gap:var(--s5)}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);min-height:44px;padding:0 var(--s4);border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);color:var(--text);font-weight:600;font-size:var(--t-sm);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background .15s var(--ease),border-color .15s var(--ease),transform .1s var(--ease)}.btn:hover:not(:disabled){background:var(--hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-attention{background:var(--attention);border-color:var(--attention);color:var(--on-attention)}.btn-attention:hover:not(:disabled){filter:brightness(1.05);background:var(--attention)}.btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 30%,var(--line))}.btn-danger:hover:not(:disabled){background:var(--danger-soft)}.btn-ghost{border-color:transparent;background:transparent}.btn-sm{min-height:36px;padding:0 var(--s3);font-size:var(--t-xs);border-radius:8px}.btn-lg{min-height:56px;padding:0 var(--s5);font-size:var(--t-md);border-radius:12px}.btn-block{width:100%}.icon-btn{min-width:44px;padding:0}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:var(--t-sm);font-weight:600;color:var(--text-2)}.field small{color:var(--muted);font-size:var(--t-xs)}.field .error{color:var(--danger);font-size:var(--t-xs)}.input,select.input,textarea.input{min-height:44px;padding:10px var(--s3);border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);width:100%}textarea.input{min-height:80px;resize:vertical}.field{min-width:0}input.input[type=date],input.input[type=time],input.input[type=datetime-local],input.input[type=month]{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-width:0;display:block;text-align:left}.input::-webkit-date-and-time-value{text-align:left;margin:0}.input::-webkit-datetime-edit{padding:0}@media(pointer:coarse){input,select,textarea{font-size:max(16px,1em)}}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.check{display:inline-flex;gap:var(--s2);align-items:center;min-height:44px;cursor:pointer}.check input{width:20px;height:20px;accent-color:var(--primary)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.panel-pad{padding:var(--s4)}.panel-head{padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s3)}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:var(--t-sm)}table.data th{text-align:left;font-weight:600;color:var(--muted);padding:var(--s2) var(--s3);border-bottom:1px solid var(--line);white-space:nowrap}table.data td{padding:var(--s3);border-bottom:1px solid var(--line);vertical-align:middle}table.data tr:last-child td{border-bottom:0}table.data .right,.right{text-align:right}table.data tfoot td{font-weight:700;border-top:2px solid var(--line-strong)}table.data tr.expandable{cursor:pointer}table.data tr.expandable:hover td,table.data tr.expandable[data-open=true] td{background:var(--hover)}.row-toggle{display:inline-flex;align-items:center;gap:var(--s2);background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-align:left}.row-toggle svg{flex:none;color:var(--muted);transition:transform .15s}.row-toggle[aria-expanded=true] svg{transform:rotate(90deg)}table.data tr.detail-row>td{padding:0 0 var(--s3) calc(var(--s3) + 24px);background:var(--hover)}table.data table.data td,table.data table.data th{background:transparent}.chip{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:600;white-space:nowrap;background:var(--hover);color:var(--text-2)}.chip:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.chip-pending,.chip-open{background:var(--hover);color:var(--text-2)}.chip-waiting,.chip-cooking,.chip-in_progress,.chip-confirmed{background:var(--attention-soft);color:var(--attention-ink)}.chip-done,.chip-ready,.chip-confirmed-pay,.chip-closed{background:var(--primary-soft);color:var(--primary)}.chip-served{background:var(--hover);color:var(--muted)}.chip-cancelled,.chip-void,.chip-rejected{background:var(--danger-soft);color:var(--danger)}.chip-received{background:var(--info-soft);color:var(--info)}.chip-change{background:var(--attention-soft);color:var(--attention-ink)}.chip-change.is-zero{background:var(--hover);color:var(--muted)}.cash-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.cash-pills .chip{font-size:var(--t-sm)}.empty{display:grid;place-items:center;text-align:center;gap:var(--s2);padding:var(--s7) var(--s4);color:var(--muted)}.empty h3{color:var(--text)}.spinner{width:22px;height:22px;border:3px solid var(--line);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.center-fill{display:grid;place-items:center;min-height:40vh}.alert{padding:var(--s3) var(--s4);border-radius:var(--r-md);font-size:var(--t-sm)}.alert-error{background:var(--danger-soft);color:var(--danger)}.alert-warn{background:var(--attention-soft);color:var(--attention-ink)}.alert-ok{background:var(--primary-soft);color:var(--primary)}@keyframes spin{to{transform:rotate(360deg)}}.overlay{position:fixed;left:0;right:0;top:var(--vv-top, 0);height:var(--vv-h, 100dvh);background:#0f111580;display:grid;place-items:center;padding:var(--s4);padding-left:max(var(--s4),env(safe-area-inset-left));padding-right:max(var(--s4),env(safe-area-inset-right));z-index:50;overflow:hidden;overscroll-behavior:contain;animation:fade .15s var(--ease)}.dialog{background:var(--panel);border-radius:var(--r-lg);width:min(520px,100%);max-width:100%;max-height:calc(var(--vv-h, 100dvh) - 32px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:var(--shadow-pop);animation:pop .18s var(--ease)}.overlay.kb-open{place-items:start center;padding-block:var(--s2)}.overlay.kb-open .dialog{max-height:calc(var(--vv-h, 100dvh) - 16px);animation:none}.dialog:focus{outline:none}html.modal-open,html.modal-open body{overflow:hidden;overscroll-behavior:none}.dialog-head{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:var(--s3);position:sticky;top:0;background:var(--panel);z-index:1}.dialog-body{padding:var(--s5)}.dialog-foot{padding:var(--s4) var(--s5);border-top:1px solid var(--line);display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--s2);position:sticky;bottom:0;background:var(--panel)}.overlay.sheet,.overlay.sheet.kb-open{place-items:end center;padding:0}.overlay.sheet .dialog{max-height:calc(var(--vv-h, 100dvh) - 24px)}.overlay.sheet .dialog{border-radius:var(--r-lg) var(--r-lg) 0 0;width:min(640px,100%);animation:rise .22s var(--ease);padding-bottom:env(safe-area-inset-bottom)}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.97)}}@keyframes rise{0%{transform:translateY(40px);opacity:0}}.toasts{position:fixed;bottom:calc(var(--s4) + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:var(--s2);z-index:60;width:min(440px,calc(100% - 32px))}.toast{background:var(--toast-bg);color:#fff;padding:var(--s3) var(--s4);border-radius:var(--r-md);box-shadow:var(--shadow-pop);font-size:var(--t-sm);animation:rise .2s var(--ease);display:flex;gap:var(--s3);align-items:center}.toast-error{background:var(--danger)}.tabs{display:flex;width:fit-content;max-width:100%;gap:2px;padding:4px;border-radius:var(--r-md);background:var(--track);overflow-x:auto;scrollbar-width:none}.tab{min-height:40px;padding:0 var(--s4);border:0;border-radius:9px;background:none;cursor:pointer;font-weight:600;font-size:var(--t-sm);color:var(--muted);white-space:nowrap;display:inline-flex;align-items:center;gap:var(--s2);transition:background .15s var(--ease),color .15s var(--ease)}.tab:hover{color:var(--text)}.tab[aria-selected=true]{color:var(--text);background:var(--panel);box-shadow:0 1px 2px #16181d14,0 1px 1px #16181d0a}.badge{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--attention);color:var(--on-attention);font-size:11px;font-weight:700;display:inline-grid;place-items:center}.shell{--side-w: 256px;--side-rail: 76px;min-height:100%;display:grid;grid-template-columns:var(--side-w) minmax(0,1fr)}.shell.nav-collapsed{--side-w: var(--side-rail)}.shell-main{min-width:0;display:flex;flex-direction:column}.sidebar{position:sticky;top:0;height:100vh;height:100dvh;z-index:25;display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--line);overflow:hidden}.side-head{display:flex;align-items:center;gap:var(--s2);min-height:61px;padding:var(--s2) var(--s3);border-bottom:1px solid var(--line)}.side-toggle{flex:none}.side-brand{flex:1;min-width:0}.side-brand .brand-logo{width:36px;height:36px}.side-brand .side-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .side-close{display:none}.side-nav{flex:1;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:var(--s3);display:grid;align-content:start;gap:var(--s4)}.side-group{display:grid;gap:2px}.side-group-title{margin:0 0 var(--s1);padding:0 var(--s3);font-size:var(--t-xs);font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-link{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:44px;padding:0 var(--s3);border:0;border-radius:var(--r-md);background:none;color:var(--text-2);font:inherit;font-weight:600;font-size:var(--t-sm);text-align:left;text-decoration:none;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease)}.side-link>svg{flex:none}.side-link .side-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side-link:hover{background:var(--hover);color:var(--text)}.side-link:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.side-link.active{background:var(--primary-soft);color:var(--primary)}.side-link.is-danger{color:var(--danger)}.side-link.is-danger:hover{background:var(--danger-soft)}.side-foot{display:grid;gap:2px;padding:var(--s3);border-top:1px solid var(--line)}.nav-collapsed .side-head{justify-content:center;padding-inline:var(--s2)}.nav-collapsed .side-brand{display:none}.nav-collapsed .side-nav,.nav-collapsed .side-foot{padding-inline:var(--s2)}.nav-collapsed .side-link{justify-content:center;padding:0}.nav-collapsed .side-group-title{height:1px;margin:0 var(--s3) var(--s1);padding:0;background:var(--line);color:transparent}.nav-collapsed .side-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.topbar .nav-toggle,.topbar .topbar-brand,.side-scrim{display:none}.topbar{position:sticky;top:0;z-index:20;background:var(--panel);border-bottom:1px solid var(--line)}.topbar-inner{display:flex;align-items:center;gap:var(--s3);padding:0 var(--s4);min-height:60px}.brand{display:flex;align-items:center;gap:var(--s2);font-family:var(--font-display);font-weight:800;font-size:var(--t-lg);text-decoration:none;color:var(--text)}.brand small{font-family:var(--font-body);font-weight:500;font-size:var(--t-xs);color:var(--muted);display:block;line-height:1.2}.page{width:100%;max-width:1440px;margin:0 auto;padding:var(--s5) var(--s4) var(--s8);flex:1}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s5)}.page-head p{color:var(--muted);margin-top:var(--s1)}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--muted)}.needs-pill{display:inline-flex;align-items:center;gap:var(--s2);min-height:36px;padding:0 var(--s3);border-radius:var(--r-pill);background:var(--attention);color:var(--on-attention);font-weight:700;font-size:var(--t-sm);text-decoration:none;white-space:nowrap;box-shadow:var(--glow-attention);animation:lantern .7s var(--ease) 1}.needs-pill:hover{filter:brightness(1.05)}.account-btn{gap:var(--s2);padding:0 var(--s2)}.account-pop{width:min(320px,calc(100vw - 24px))}.account-head{display:flex;align-items:center;gap:var(--s3)}.account-head strong{display:block}.account-head small{color:var(--muted);font-size:var(--t-xs)}.account-rows{display:grid;gap:2px;margin:0 calc(-1 * var(--s2))}.account-back{display:inline-flex;align-items:center;gap:var(--s1);min-height:40px;padding:0;border:0;background:none;color:var(--text);font:inherit;font-weight:700;cursor:pointer}.offline-strip{display:flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--s1) var(--s4);background:var(--attention-soft);color:var(--attention-ink);font-size:var(--t-sm);font-weight:600;border-top:1px solid var(--attention)}.sound-strip{width:100%;border:0;border-top:1px solid var(--attention);font-family:inherit;cursor:pointer}@media(max-width:900px){.account-name{display:none}}.live-dot.on{background:var(--good-dot);box-shadow:0 0 0 3px color-mix(in srgb,var(--good-dot) 25%,transparent)}.sync-pill{display:inline-flex;align-items:center;gap:var(--s1);min-height:28px;padding:0 var(--s2);border-radius:var(--r-pill);background:var(--attention-soft);color:var(--attention-ink);font-size:var(--t-xs);font-weight:700;white-space:nowrap}.sync-pill svg{animation:spin 1.2s linear infinite}@media(prefers-reduced-motion:reduce){.sync-pill svg{animation:none}}.popover{position:absolute;right:0;top:calc(100% + 8px);width:min(380px,calc(100vw - 24px));max-height:70vh;max-height:70dvh;overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-pop);z-index:30}.notes-pop{width:min(420px,calc(100vw - 24px));max-height:min(640px,calc(100dvh - 84px));overflow:hidden;display:flex;flex-direction:column}.notes-scrim,.notes-close{display:none}@media(max-width:600px){.notes-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:29;background:#0f111580;animation:fade .15s var(--ease)}.topbar .notes-pop{position:fixed;top:auto;left:0;right:0;bottom:0;width:auto;max-height:min(75dvh,640px);border:0;border-radius:var(--r-lg) var(--r-lg) 0 0;padding-bottom:env(safe-area-inset-bottom);animation:rise .22s var(--ease)}.topbar .notes-pop:before{content:"";flex:none;align-self:center;width:36px;height:4px;margin-top:var(--s2);border-radius:var(--r-pill);background:var(--line-strong)}.notes-head{padding-top:var(--s1)}.notes-close{display:inline-flex}}.notes-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);min-height:56px;padding:var(--s3) var(--s2) var(--s1) var(--s4);flex:none}.notes-title{font-size:var(--t-xl);font-weight:800;line-height:1.2;min-width:0}.notes-markall{color:var(--primary)}.notes-tabs{display:flex;gap:var(--s2);padding:var(--s1) var(--s4) var(--s2);flex:none}.notes-tabs button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 var(--s4);border:0;border-radius:var(--r-pill);background:transparent;color:var(--text);font:inherit;font-size:var(--t-sm);font-weight:700;cursor:pointer}.notes-tabs button:hover{background:var(--hover)}.notes-tabs button[aria-pressed=true]{background:var(--primary-soft);color:var(--primary)}.notes-tabs button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.notes-tab-count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--r-pill);background:var(--danger);color:#fff;font-size:11px;line-height:20px;text-align:center;font-variant-numeric:tabular-nums}.notes-since{padding:0 var(--s4) var(--s2);font-size:var(--t-xs);color:var(--muted);flex:none}.notes-list{padding:0 var(--s2) var(--s2);overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0;border-top:1px solid var(--line)}.notes-group ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}.notes-group-title{padding:var(--s3) var(--s2) var(--s1);font-size:var(--t-md);font-weight:800;color:var(--text)}.note-row{width:100%;display:grid;grid-template-columns:52px minmax(0,1fr) 12px;align-items:center;column-gap:var(--s3);padding:var(--s2);border:0;border-radius:var(--r-md);background:none;text-align:left;color:var(--text-2);font:inherit;font-size:var(--t-sm);line-height:1.45}button.note-row{cursor:pointer}button.note-row:hover{background:var(--hover)}button.note-row:active{background:var(--line)}button.note-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.note-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--hover);color:var(--muted)}.note-icon.tone-order{background:var(--primary-soft);color:var(--primary)}.note-icon.tone-ready{background:var(--good-soft);color:var(--good)}.note-icon.tone-pay,.note-icon.tone-feedback{background:var(--attention-soft);color:var(--attention-ink)}.note-icon.tone-cancel{background:var(--danger-soft);color:var(--danger)}.note-icon.tone-request{background:var(--good-soft);color:var(--good)}.note-body{display:grid;gap:2px;min-width:0}.note-text{overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.note-meta{display:flex;align-items:center;flex-wrap:wrap;gap:0 6px;font-size:var(--t-xs);color:var(--muted);font-variant-numeric:tabular-nums}.note-kind{font-weight:700}.note-kind+time:before{content:"·";margin-right:6px}.note.unread .note-text{color:var(--text);font-weight:600}.note.unread .note-meta{color:var(--primary);font-weight:600}.note-dot{width:12px;height:12px;border-radius:50%;background:var(--primary)}.notes-empty{display:grid;justify-items:center;gap:var(--s3);padding:var(--s7) var(--s5);text-align:center;color:var(--muted);font-size:var(--t-sm);border-top:1px solid var(--line)}.notes-empty-icon{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:var(--hover)}.notes-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding:var(--s2) var(--s2) var(--s2) var(--s4);border-top:1px solid var(--line);font-size:var(--t-xs);flex:none}.notes-foot .icon-btn{min-width:36px}@media(max-width:600px){.notes-markall{padding:0 var(--s2)}}.theme-pop{width:min(300px,calc(100vw - 24px));padding:var(--s4);display:grid;gap:var(--s4)}.theme-pop h4,.device-settings h4{font-size:var(--t-sm);color:var(--text-2);margin-bottom:var(--s2)}.segmented.three{grid-template-columns:repeat(3,1fr)}.swatch-photo{background-size:cover;background-position:center;outline:3px solid;outline-offset:-3px}.segmented button{color:var(--text)}.swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--s2)}.swatch{aspect-ratio:1;min-height:40px;border-radius:50%;border:2px solid var(--panel);box-shadow:0 0 0 1px var(--line-strong);cursor:pointer;display:grid;place-items:center;color:#fff;padding:0}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px var(--text)}.swatch-custom{position:relative;overflow:hidden;background:conic-gradient(#e5484d,#f5d000,#3fb67b,#1f6aa5,#8e3b8f,#e5484d)}.hex-field{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s3)}.hex-field .input{min-height:40px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;text-transform:lowercase}.hex-field .input[aria-invalid=true]{border-color:var(--danger)}.hex-preview{width:40px;height:40px;flex-shrink:0;border-radius:8px;box-shadow:inset 0 0 0 1px var(--line-strong)}.hex-error{display:block;margin-top:var(--s1);color:var(--danger);font-size:var(--t-xs)}.swatch-custom input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;border:0;padding:0}.board{display:grid;grid-template-columns:360px 1fr;gap:var(--s5);align-items:start}.needs-panel{position:sticky;top:84px;max-height:calc(100dvh - 100px);overflow:auto}.needs-panel.is-waiting{border-color:var(--attention);box-shadow:var(--glow-attention)}.caught-up{display:flex;gap:var(--s2);align-items:flex-start;margin:0;padding:var(--s4);color:var(--good);font-weight:600}.caught-up>svg{flex:none;margin-top:2px}.board-tools{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.board-tools .tabs{flex:0 1 auto;min-width:0}.board-search{width:min(260px,100%)}@media(max-width:560px){.board-tools .tabs,.board-search{flex:1 1 100%;width:100%}.board-tools .tabs .tab{flex:1 1 0;justify-content:center}}.queue-item{padding:var(--s3) var(--s4);border-bottom:1px solid var(--line);display:grid;gap:var(--s2)}.queue-item:last-child{border-bottom:0}.bills{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:var(--s3)}.bill-card{box-shadow:var(--shadow-card);text-align:left;padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);cursor:pointer;display:grid;gap:var(--s3);text-decoration:none;color:inherit;transition:border-color .15s var(--ease)}.bill-card:hover{border-color:var(--primary)}.bill-card.alerting{border-color:var(--attention);box-shadow:inset 4px 0 0 var(--attention)}.bill-no{font-family:var(--font-display);font-weight:800;font-size:var(--t-2xl);line-height:1;overflow-wrap:anywhere}@media(max-width:480px){.bills .bill-no{font-size:clamp(var(--t-lg),6.4vw,var(--t-2xl));min-width:0}}.takeaway-tag{display:inline-flex;align-items:center;gap:4px;background:var(--attention-soft);color:var(--attention-ink);border-radius:8px;padding:2px 8px;font-weight:700;font-size:var(--t-sm);white-space:nowrap}.floor-filters{display:flex;flex-wrap:wrap;gap:var(--s2)}.floor-filter{display:inline-flex;align-items:center;gap:var(--s2);min-height:40px;padding:0 6px 0 var(--s4);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--panel);color:var(--text);font:inherit;font-size:var(--t-sm);font-weight:600;cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease)}.floor-filter:hover{border-color:var(--line-strong)}.floor-filter b{min-width:26px;height:26px;padding:0 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-xs);font-weight:700;display:inline-grid;place-items:center}.floor-filter[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--panel)}.floor-filter[aria-pressed=true] b{background:color-mix(in srgb,var(--panel) 18%,transparent);color:var(--panel)}.floor-dot{width:8px;height:8px;border-radius:50%;flex:none;background:var(--muted)}.tone-free .floor-dot{background:var(--good-dot)}.tone-busy .floor-dot{background:var(--busy)}.tone-alert .floor-dot{background:var(--attention)}.floor-tools{margin-bottom:var(--s5);gap:var(--s3);align-items:center}.floor-tools .floor-filters{margin-left:auto}.floor-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:var(--s5);align-items:start}.floor-section-head{display:grid;gap:2px}.floor-heading{display:flex;align-items:baseline;gap:var(--s2);font-size:var(--t-lg)}.floor-count{font-family:var(--font-body);font-size:var(--t-sm);font-weight:500;color:var(--muted)}.floor-section-head p{font-size:var(--t-sm)}.floor{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:var(--s3)}.table-tile{--tile-pad: var(--s4);position:relative;overflow:hidden;min-height:150px;padding:var(--tile-pad);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:inherit;font:inherit;text-decoration:none;display:flex;flex-direction:column;align-items:stretch;gap:var(--s2);text-align:left;cursor:pointer;box-shadow:var(--shadow-card);transition:border-color .15s var(--ease),box-shadow .15s var(--ease),transform .15s var(--ease)}.table-tile:hover{border-color:var(--line-strong);box-shadow:0 4px 14px #16181d12}.table-tile:active{transform:scale(.98)}.tile-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s2)}.tile-side{display:grid;justify-items:end;gap:var(--s2)}.tile-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--r-pill);background:var(--good-soft);color:var(--good);font-size:var(--t-xs);font-weight:700;white-space:nowrap}.tile-guests{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-display);font-size:var(--t-lg);font-weight:800;color:var(--text)}.tile-guests svg{color:var(--text-2)}.tile-foot{display:grid;gap:2px;margin-top:auto}.tile-amount{font-family:var(--font-display);font-size:var(--t-lg);font-weight:800;line-height:1.2;white-space:nowrap}.tile-meta{display:flex;align-items:center;gap:4px var(--s3);flex-wrap:wrap;font-size:var(--t-xs);color:var(--muted)}.tile-meta-item{display:inline-flex;align-items:center;gap:4px}.item-pills{display:flex;flex-wrap:wrap;gap:4px}.item-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;border:1px solid transparent;font-size:var(--t-xs);font-weight:600;line-height:1.5;color:var(--text)}.item-pill b{font-weight:800}.item-pill.is-pending{background:var(--attention-soft);border-color:var(--attention)}.item-pill.is-cooking{background:var(--info-soft);border-color:var(--info)}.item-pill.is-done{background:var(--good);border-color:var(--good);color:#fff}.item-pill.is-served{background:var(--hover);border-color:var(--line-strong);color:var(--text-2)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .item-pill.is-done{color:#0b1f13}}:root[data-theme=dark] .item-pill.is-done{color:#0b1f13}.tile-alert{display:flex;align-items:center;justify-content:center;gap:6px;margin:var(--s1) calc(-1 * var(--tile-pad)) calc(-1 * var(--tile-pad));padding:var(--s3);background:var(--attention);color:var(--on-attention);font-size:var(--t-sm);font-weight:700;text-align:center}.tile-cta{display:inline-flex;align-items:center;gap:4px;margin-top:auto;font-size:var(--t-sm);font-weight:600;color:var(--primary);opacity:0;transition:opacity .15s var(--ease)}.table-tile.is-free:hover .tile-cta,.table-tile.is-free:focus-visible .tile-cta{opacity:1}.table-art{--chair: var(--line-strong);--top: var(--track);position:relative;flex:none;width:88px;height:76px}.table-top{position:absolute;top:10px;right:12px;bottom:10px;left:12px;display:grid;place-items:center;border-radius:10px;background:var(--top);font-family:var(--font-display);font-size:var(--t-lg);font-weight:800;line-height:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}.chair{position:absolute;border-radius:var(--r-pill);background:var(--chair)}.chair-t,.chair-b{left:50%;width:30px;height:4px;margin-left:-15px}.chair-t{top:2px}.chair-b{bottom:2px}.chair-l,.chair-r{top:50%;width:4px;height:28px;margin-top:-14px}.chair-l{left:2px}.chair-r{right:2px}@media(max-width:560px){.table-tile{--tile-pad: var(--s3);min-height:136px}.tile-top{flex-wrap:wrap}.table-art{width:64px;height:58px}.table-top{top:8px;right:9px;bottom:8px;left:9px;font-size:var(--t-md);border-radius:8px}.chair-t,.chair-b{width:22px;margin-left:-11px}.chair-l,.chair-r{height:20px;margin-top:-10px}.tile-guests{font-size:var(--t-md)}}.table-tile.is-busy{background:var(--busy-soft);border-color:color-mix(in srgb,var(--busy) 22%,var(--line))}.table-tile.is-busy:hover{border-color:color-mix(in srgb,var(--busy) 45%,var(--line))}.table-tile.is-busy .table-art{--chair: color-mix(in srgb, var(--busy) 35%, var(--panel));--top: var(--panel)}.table-tile.is-busy .table-top{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--busy) 30%,var(--line))}.table-tile.is-busy .tile-pill{background:var(--busy-strong);color:var(--busy-ink)}.table-tile.is-alert{background:var(--panel);border-color:var(--attention);animation:lantern .7s var(--ease) 1}.table-tile.is-alert:hover{border-color:var(--attention)}.table-tile.is-alert .table-art{--chair: var(--line-strong);--top: var(--track)}.table-tile.is-alert .table-top{box-shadow:none}.table-tile.is-alert .tile-pill{background:var(--attention);color:var(--on-attention)}.table-tile.is-linked{border-style:dashed}.table-tile.is-off{cursor:not-allowed;opacity:.6;border-style:dashed;background:transparent;box-shadow:none}.table-tile.is-off .tile-pill{background:var(--hover);color:var(--muted)}.table-tile.is-off:hover{border-color:var(--line);box-shadow:none}.table-tile.is-off:active{transform:none}.table-tile.is-dim{opacity:.3}.table-tile.is-static{cursor:default}.table-tile.is-static:hover{border-color:var(--line);box-shadow:var(--shadow-card)}.table-tile.is-static:active{transform:none}.floor-side{position:sticky;top:84px;max-height:calc(100dvh - 100px);overflow:auto;gap:var(--s4)}.rail-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.rail-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s4);border-bottom:1px solid var(--line)}.rail-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none}.rail-icon.tone-attention{background:var(--attention-soft);color:var(--attention-ink)}.rail-icon.tone-info{background:var(--info-soft);color:var(--info)}.rail-title{font-size:var(--t-md);font-weight:700;line-height:1.3}.rail-sub{font-size:var(--t-xs);color:var(--muted)}.rail-count{min-width:26px;height:26px;padding:0 8px;border-radius:var(--r-pill);display:inline-grid;place-items:center;font-size:var(--t-xs);font-weight:800;flex:none}.rail-count.tone-attention{background:var(--attention);color:var(--on-attention)}.rail-count.tone-info{background:var(--info);color:var(--on-info)}.rail-item{display:grid;gap:var(--s2);padding:var(--s4);border-bottom:1px solid var(--line)}.rail-item:last-child{border-bottom:0}.rail-item-title{font-size:var(--t-sm);font-weight:700;min-width:0;overflow-wrap:anywhere}.rail-item-amount{font-family:var(--font-display);font-size:var(--t-md);font-weight:800;white-space:nowrap}.rail-item-meta{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-xs);color:var(--muted)}.rail-item-count{font-size:var(--t-xs);font-weight:700;color:var(--text-2)}.rail-progress{display:flex;align-items:center;gap:var(--s3)}.rail-progress .rail-item-meta{white-space:nowrap}.rail-progress .progress{flex:1;height:5px;background:var(--track)}.rail-progress .progress>span{background:var(--info)}.rail-progress .progress.is-done>span{background:var(--good-dot)}.rail-ready,.rail-alert{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-xs);font-weight:700}.rail-ready{color:var(--good)}.rail-alert{color:var(--attention-ink)}.rail-empty{padding:var(--s4);font-size:var(--t-sm);color:var(--muted)}.rail-foot{padding:var(--s2);border-top:1px solid var(--line)}.rail-foot .btn{color:var(--primary)}.rail-card .caught-up{font-size:var(--t-sm)}.rail-card.is-waiting{border-color:color-mix(in srgb,var(--attention) 55%,var(--line));box-shadow:var(--shadow-card)}.floor-side .needs-panel{position:static;max-height:none}.chip-merged{background:var(--hover);color:var(--text-2)}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(120px,100%),1fr));gap:var(--s2)}.pick-tile{display:grid;gap:2px;min-height:56px;padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color .15s var(--ease)}.pick-tile:hover{border-color:var(--primary)}.pick-tile[aria-pressed=true],.pick-tile[aria-checked=true]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--panel))}.pick-tile:disabled{cursor:not-allowed;opacity:.55}.pick-tile strong{font-family:var(--font-display);font-size:var(--t-lg)}.pick-tile small{color:var(--muted);font-size:var(--t-sm)}.move-line{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s2) 0;border-bottom:1px solid var(--line)}.move-line:last-child{border-bottom:0}.move-line .name{font-weight:600}@media(max-width:420px){.floor{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress{height:6px;border-radius:var(--r-pill);background:var(--hover);overflow:hidden}.progress>span{display:block;height:100%;background:var(--primary);transition:width .3s var(--ease)}.bill-layout{display:grid;grid-template-columns:1fr 380px;gap:var(--s5);align-items:start}.bill-side{position:sticky;top:76px;display:grid;gap:var(--s4)}.order-block{border:1px solid var(--line);border-radius:var(--r-md);background:var(--ticket);overflow:hidden;box-shadow:var(--shadow-card)}.order-block.is-settled{box-shadow:none}.order-block.is-pending{border-color:var(--attention)}.order-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--hover);flex-wrap:wrap}.order-head.is-pending{background:var(--attention-soft)}.vendor-group{padding:var(--s3) var(--s4);border-top:1px solid var(--line)}.vendor-group h4{font-size:var(--t-md);display:flex;gap:var(--s2);align-items:center}.line{display:grid;grid-template-columns:1fr auto auto;gap:var(--s3);align-items:center;padding:var(--s2) 0}.line .name{font-weight:500}.line .note-text{font-size:var(--t-xs);color:var(--attention-ink)}.line.is-cancelled .name{text-decoration:line-through;color:var(--muted)}.line.has-photo{grid-template-columns:auto 1fr auto auto}.line.is-cancelled .line-photo{opacity:.5;filter:grayscale(1)}.sum-row{display:flex;justify-content:space-between;padding:6px 0}.sum-row.total{font-family:var(--font-display);font-size:var(--t-2xl);font-weight:800;border-top:1px solid var(--line);margin-top:var(--s2);padding-top:var(--s3);align-items:baseline}.sum-row.total>span:first-child{font-size:var(--t-md)}.sum-row.strong{font-weight:700;border-top:1px solid var(--line);margin-top:var(--s2);padding-top:var(--s3)}.order-block.is-settled{background:transparent}.password-field{position:relative;display:block}.password-field .input{padding-right:52px}.password-field .icon-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%)}.bill-no,.sum-row.total .num,.stat>b,.ticket-no{font-variant-numeric:tabular-nums}.order-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);min-height:44px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.order-toggle>svg{color:var(--muted);flex:none}.settle-step{display:grid;gap:var(--s2);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md)}.settle-step h4{font-size:var(--t-md)}.settle-lines{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.settle-lines li{gap:var(--s2)}.next-step{display:grid;gap:var(--s3);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.next-step-label{font-size:var(--t-xs);font-weight:700;color:var(--muted)}.next-step-text{display:flex;gap:var(--s2);align-items:flex-start;margin:0;font-weight:600;font-size:var(--t-md)}.next-step-text>svg{flex:none;margin-top:2px}.next-step.tone-attention{border-color:var(--attention);background:var(--attention-soft);box-shadow:0 0 0 3px var(--attention-soft);animation:lantern .7s var(--ease) 1}.next-step.tone-attention .next-step-text,.next-step.tone-attention .next-step-label{color:var(--attention-ink)}.next-step.tone-good{border-color:var(--good);background:var(--good-soft)}.next-step.tone-good .next-step-text,.next-step.tone-good .next-step-label{color:var(--good)}.next-step.tone-danger{border-color:var(--danger);background:var(--danger-soft)}.next-step.tone-danger .next-step-text,.next-step.tone-danger .next-step-label{color:var(--danger)}@keyframes lantern{0%{box-shadow:0 0 0 0 var(--attention)}to{box-shadow:0 0 0 3px var(--attention-soft)}}.menu-wrap{position:relative}.popover.menu{width:max-content;min-width:220px;max-width:min(340px,calc(100vw - 24px));padding:var(--s1)}.menu-item{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:44px;padding:var(--s2) var(--s3);border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-weight:600;text-align:left;line-height:1.35;cursor:pointer}.menu-item>svg{flex:none;color:var(--muted)}.menu-item.is-danger>svg{color:inherit}.menu-btn{gap:var(--s2)}.menu-scrim,.menu-sheet-head{display:none}@media(max-width:600px){.menu-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0f111580;animation:fade .15s var(--ease)}.menu-wrap .popover.menu{position:fixed;top:auto;left:0;right:0;bottom:0;z-index:41;width:auto;min-width:0;max-width:none;max-height:min(80dvh,640px);padding:var(--s2) var(--s3) calc(var(--s3) + env(safe-area-inset-bottom));border:0;border-radius:var(--r-lg) var(--r-lg) 0 0;animation:rise .22s var(--ease)}.menu-wrap .popover.menu:before{content:"";display:block;width:36px;height:4px;margin:0 auto var(--s1);border-radius:var(--r-pill);background:var(--line-strong)}.menu-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:0 0 var(--s1) var(--s3);border-bottom:1px solid var(--line);margin-bottom:var(--s1)}.menu-sheet-head strong{font-family:var(--font-display);font-size:var(--t-lg)}.menu-item{min-height:52px;font-size:var(--t-md)}}.menu-item:hover,.menu-item:focus-visible{background:var(--hover)}.menu-item.is-danger:hover,.menu-item.is-danger:focus-visible{background:var(--danger-soft)}.menu-sep{border:0;border-top:1px solid var(--line);margin:var(--s1) 0}.segmented{display:grid;grid-template-columns:1fr 1fr;padding:4px;background:var(--track);border-radius:var(--r-md);gap:4px}.segmented button{min-height:40px;border:0;border-radius:9px;background:transparent;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2)}.segmented button[aria-pressed=true]{background:var(--panel);box-shadow:0 1px 3px #0000001f}.slip-thumb{width:64px;height:64px;object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--line);cursor:zoom-in;background:var(--hover)}.qr-box{display:grid;justify-items:center;gap:var(--s3);padding:var(--s4);text-align:center}.qr-box .qr-code{width:100%;max-width:220px;height:auto;background:#fff;padding:12px;border-radius:var(--r-md)}.qr-table{font-family:var(--font-display);font-weight:800;font-size:clamp(40px,10vw,64px);line-height:1;overflow-wrap:anywhere}.qr-box .bill-no.is-small{font-size:var(--t-lg)}.menu-link{display:flex;gap:var(--s5);align-items:flex-start;flex-wrap:wrap}.menu-link-qr{padding:0;flex:0 0 auto}.menu-link-qr svg{width:168px;box-shadow:0 0 0 1px var(--line)}.menu-link .grow{flex:1 1 260px;min-width:0}.menu-poster{display:grid;justify-items:center;gap:8mm;text-align:center;color:#111;padding-top:10mm}.menu-poster svg{width:90mm;height:90mm}.menu-poster-venue{font-family:var(--font-display);font-weight:800;font-size:26pt;line-height:1.1}.menu-poster-scan{font-weight:700;font-size:18pt}.menu-poster-note{font-size:12pt;color:#444}.tickets{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:var(--s4);align-items:start}.ticket{position:relative;background:var(--ticket);color:var(--text);border-radius:4px 4px var(--r-md) var(--r-md);padding:var(--s5) var(--s4) var(--s4);box-shadow:0 1px 0 var(--line-strong),0 6px 18px #1c232114;display:grid;gap:var(--s3)}.ticket:before{content:"";position:absolute;left:0;right:0;top:-6px;height:12px;background:radial-gradient(circle at 8px 0,transparent 6px,var(--ticket) 6.5px) repeat-x;background-size:16px 12px}.ticket.is-ready{box-shadow:inset 0 4px 0 var(--primary),0 6px 18px #1c232114}.ticket.is-new{box-shadow:inset 0 4px 0 var(--attention),0 6px 18px #1c232114}.ticket-no{font-family:var(--font-display);font-size:var(--t-3xl);font-weight:800;line-height:.9;letter-spacing:-.03em}.ticket-meta{font-size:var(--t-sm);color:var(--muted)}.ticket-rule{border:0;border-top:2px dashed var(--line-strong);margin:0}.ticket>.row>.btn{flex:1 1 0;min-width:0}.ticket-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s3);align-items:center;min-height:52px}.ticket-item.has-photo{grid-template-columns:auto auto 1fr auto}.ticket-item.done .line-photo,.ticket-item.cancelled .line-photo{opacity:.5;filter:grayscale(1)}.ticket-item .qty{font-family:var(--font-display);font-weight:800;font-size:var(--t-xl);min-width:36px}.ticket-item.done .what{text-decoration:line-through;color:var(--muted)}.ticket-item .what strong{display:block;font-size:var(--t-md)}.ticket-item .what em{font-style:normal;font-size:var(--t-sm);color:var(--attention-ink);background:var(--attention-soft);padding:0 6px;border-radius:4px}.elapsed{display:inline-flex;align-items:center;gap:4px;font-weight:700;font-size:var(--t-md);font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}.elapsed.warn{color:var(--attention-ink);background:var(--attention-soft);padding:2px 8px;border-radius:var(--r-pill)}.elapsed.late{color:var(--danger);background:var(--danger-soft);padding:2px 8px;border-radius:var(--r-pill)}.ticket.is-late{box-shadow:inset 0 4px 0 var(--danger),0 6px 18px #1c232114}.ticket-item.cancelled .what{text-decoration:line-through;color:var(--muted)}.kitchen-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5);align-items:start}.kitchen-col{display:grid;gap:var(--s5);align-content:start;min-height:200px;padding:var(--s3);border-radius:var(--r-lg);background:color-mix(in srgb,var(--hover) 55%,transparent)}.kitchen-col-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);font-size:var(--t-lg);padding:var(--s1) var(--s2) 0}.kitchen-col-count{min-width:32px;height:32px;padding:0 8px;display:inline-grid;place-items:center;border-radius:var(--r-pill);background:var(--panel);font-size:var(--t-md);box-shadow:var(--shadow-card)}.col-pending .kitchen-col-count{background:var(--attention);color:var(--on-attention)}.col-ready .kitchen-col-count{background:var(--good-soft);color:var(--good)}.kitchen-col-empty{color:var(--muted);text-align:center;padding:var(--s5) 0}.kitchen-board .ticket-no{font-size:var(--t-display)}.kitchen-board .ticket-item .qty{font-size:var(--t-2xl)}.kitchen-board .ticket-item .what strong{font-size:var(--t-lg)}.kitchen-board .ticket-item .what em{display:inline-block;margin-top:2px;font-size:var(--t-md);font-weight:600}.ticket-no.is-table{overflow-wrap:anywhere}.ticket-order{color:var(--text);font-weight:700}.ticket-opts{display:block;margin-top:2px;font-size:var(--t-sm);font-weight:600;color:var(--text)}.kitchen-board .ticket-opts{font-size:var(--t-md)}.soldout-list{display:grid}.soldout-row{display:flex;align-items:center;gap:var(--s3);min-height:56px;border-bottom:1px solid var(--line)}.soldout-row.is-out .grow{color:var(--muted);text-decoration:line-through}.skeleton{border-radius:var(--r-md);background:linear-gradient(90deg,var(--hover) 0%,var(--line) 50%,var(--hover) 100%);background-size:200% 100%;animation:shimmer 1.2s linear infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(max-width:1100px){.kitchen-board{grid-template-columns:1fr 1fr}.kitchen-board .col-ready{grid-column:1 / -1}}@media(max-width:900px){.kitchen-board{grid-template-columns:1fr}}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:var(--s3)}.stat{padding:var(--s4)}.stat>b{display:block;font-family:var(--font-display);font-size:var(--t-2xl);font-weight:800;line-height:1.1;margin-top:var(--s1)}.stat{box-shadow:var(--shadow-card)}.stat-hero{grid-column:span 2;display:grid;gap:var(--s2);align-content:start}.stat-hero>b{font-size:clamp(var(--t-2xl),6vw + 12px,var(--t-3xl));overflow-wrap:anywhere}.split{display:grid;gap:var(--s2);margin-top:var(--s2)}.split-bar{height:10px;border-radius:var(--r-pill);background:var(--attention);overflow:hidden}.split-bar>span{display:block;height:100%;background:var(--primary)}.split-legend{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);font-size:var(--t-sm);color:var(--text-2)}.split-legend span{display:inline-flex;align-items:center;gap:6px}.split-legend i{width:10px;height:10px;border-radius:50%}.dot-cash{background:var(--primary)}.dot-transfer{background:var(--attention)}.day-picker{display:flex;align-items:center;gap:var(--s1)}.day-picker .input{width:auto;min-width:0}@media(max-width:560px){.day-picker{width:100%}.day-picker .input{flex:1;text-align:center}.day-picker .input::-webkit-date-and-time-value{text-align:center}}.day-status{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);font-weight:600}.day-status>svg{flex:none}.day-status.is-closed{justify-content:flex-start;background:var(--good-soft);color:var(--good);border:1px solid var(--good)}.day-status.is-open{background:var(--attention-soft);color:var(--attention-ink);border:1px solid var(--attention);box-shadow:var(--glow-attention)}@media(max-width:560px){.stat-hero{grid-column:auto}}.bar{height:8px;border-radius:var(--r-pill);background:var(--hover);overflow:hidden;min-width:80px}.bar>span{display:block;height:100%;background:var(--primary)}.export-form{gap:var(--s5)}.export-group{border:0;padding:0;margin:0;min-width:0;display:grid;gap:var(--s3)}.export-group legend{padding:0;margin-bottom:var(--s2);font-size:var(--t-sm);font-weight:600;color:var(--text-2)}.export-group .error{color:var(--danger);font-size:var(--t-xs)}.export-group small{font-size:var(--t-xs)}.export-presets{padding:0;flex-wrap:wrap}.export-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}.export-scope{display:flex;flex-direction:column;gap:2px;padding:var(--s3) var(--s4);border-radius:var(--r-sm);background:var(--hover);font-size:var(--t-sm)}@media(max-width:420px){.export-dates{grid-template-columns:1fr}}.admin-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--s4)}.admin-card{display:flex;align-items:center;gap:var(--s4);min-height:96px;padding:var(--s4) var(--s5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-card);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}.admin-card:hover{border-color:var(--primary);background:var(--hover)}.admin-card:active{transform:scale(.99)}.admin-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.admin-card-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary)}.admin-card-body{display:grid;gap:4px;flex:1;min-width:0}.admin-card-title{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-md)}.admin-card-title .setup-dot,.admin-card-count{margin-left:auto}.admin-card-count{padding:0 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-sm);font-weight:600}.admin-card-hint{color:var(--text-2);font-size:var(--t-sm);line-height:1.4}.admin-card-go{flex:none;color:var(--text-2)}.admin-card:hover .admin-card-go{color:var(--primary)}.admin-back{gap:6px;margin-bottom:var(--s2);padding:0;border:0;background:none;font:inherit;font-size:var(--t-sm);cursor:pointer}.admin-back:hover{color:var(--primary)}.vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--s4)}.vendor-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-card);overflow:hidden;transition:border-color .15s}.vendor-card:has(.vendor-card-main:hover){border-color:var(--primary)}.vendor-card-main{display:flex;align-items:center;gap:var(--s4);flex:1;padding:var(--s4) var(--s5);border:0;background:none;color:var(--text);font:inherit;text-align:left}button.vendor-card-main{cursor:pointer}button.vendor-card-main:hover{background:var(--hover)}button.vendor-card-main:hover .admin-card-go{color:var(--primary)}button.vendor-card-main:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.vendor-card-main .thumb{flex:none}.vendor-card-body{display:grid;gap:2px;flex:1;min-width:0;font-size:var(--t-sm)}.vendor-card-body strong{font-size:var(--t-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-card-dishes{color:var(--primary);font-weight:600}.vendor-card[data-off] .vendor-card-main{opacity:.55}.vendor-card-foot{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s4);border-top:1px solid var(--line);font-size:var(--t-sm)}.staff-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.staff-chips{padding:0}.staff-chips .num{margin-left:4px;opacity:.7}.avatar.staff-avatar{--av: 52px;align-self:flex-start}.staff-name{display:flex;align-items:center;gap:var(--s2);min-width:0}.staff-name strong{min-width:0}.staff-name .chip{flex:none}.staff-login{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-roles{display:flex;flex-wrap:wrap;gap:4px;margin-top:var(--s1)}.staff-former>summary{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);cursor:pointer;list-style:none}.staff-former>summary::-webkit-details-marker{display:none}.staff-former>summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px;border-radius:var(--r-lg)}.staff-former[open]>summary{border-bottom:1px solid var(--line)}.staff-former-body{padding:var(--s4)}.staff-former .vendor-card{opacity:.8;box-shadow:none}@media(max-width:560px){.staff-tools .btn{width:100%;justify-content:center}}.admin-main{container:admin / inline-size;min-width:0}.venue-page{display:grid;gap:var(--s5)}.venue-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:var(--s5);align-items:start}.venue-side{position:sticky;top:84px;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5);min-width:0}.device-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.device-col{padding:var(--s5);align-content:start;min-width:0}.device-col+.device-col{border-left:1px solid var(--line)}.device-settings h4.device-title{font-size:var(--t-md);color:var(--text);margin:0}.venue-form .panel-head{align-items:flex-start}.venue-section{padding:var(--s5)}.venue-section+.venue-section{border-top:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4);align-items:start}.venue-form .swatches{grid-template-columns:repeat(auto-fill,44px)}.venue-form .hex-field{max-width:260px}.venue-foot{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);padding:var(--s3) var(--s5);border-top:1px solid var(--line);background:var(--panel);border-radius:0 0 var(--r-md) var(--r-md)}.venue-foot.is-dirty{background:color-mix(in srgb,var(--attention-soft) 55%,var(--panel))}.unsaved{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);font-weight:600;color:var(--attention-ink)}.unsaved:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--attention)}.venue-preview{--primary: var(--pv-l);--on-primary: var(--pv-l-on);--primary-soft: var(--pv-l-soft);overflow:hidden}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .venue-preview{--primary: var(--pv-d);--on-primary: var(--pv-d-on);--primary-soft: var(--pv-d-soft)}}:root[data-theme=dark] .venue-preview{--primary: var(--pv-d);--on-primary: var(--pv-d-on);--primary-soft: var(--pv-d-soft)}.preview-body{display:grid;gap:var(--s2);padding:var(--s4);background:color-mix(in srgb,var(--hover) 60%,transparent)}.preview-label{font-size:var(--t-xs);font-weight:700;color:var(--muted)}.preview-label:not(:first-child){margin-top:var(--s2)}.preview-phone{width:min(280px,100%);margin:0 auto;border:6px solid var(--line-strong);border-radius:22px;overflow:hidden;background:var(--bg);box-shadow:var(--shadow-card);transition:border-color .15s var(--ease)}.preview-hero{display:grid;justify-items:center;gap:6px;padding:var(--s4) var(--s3);text-align:center;background:linear-gradient(to bottom,transparent,rgb(0 0 0 / .18)),var(--primary);color:var(--on-primary);transition:background-color .2s var(--ease)}.preview-hero strong{font-family:var(--font-display);font-size:var(--t-md);line-height:1.35;max-width:100%;overflow-wrap:anywhere}.preview-logo{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--panel);background:var(--panel);color:var(--muted)}.preview-tag{background:var(--panel);color:var(--text);border-radius:var(--r-pill);padding:1px 10px;font-size:var(--t-xs);font-weight:700}.order-list{list-style:none;margin:0;padding:var(--s2);display:grid;gap:var(--s2);max-height:360px;overflow:auto}.order-list>li{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);overflow:hidden}.order-cats{list-style:none;margin:0;padding:0 0 4px}.order-row{display:flex;align-items:center;gap:6px;min-width:0;padding:2px 4px 2px 10px;font-size:var(--t-xs)}.order-row>.grow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-vendor{padding:6px 4px 6px 6px;font-size:var(--t-sm)}.order-vendor strong{color:var(--primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-cats .order-row{padding-left:38px}.order-row.is-empty>.grow{color:var(--muted);font-style:italic}.order-logo{width:26px;height:26px;flex-shrink:0;border-radius:50%;object-fit:cover;background:var(--hover);color:var(--muted)}.order-move{display:inline-flex;flex-shrink:0}.order-move .icon-btn{min-width:30px;min-height:30px;padding:0}.order-empty{padding:var(--s4) var(--s3);font-size:var(--t-xs);text-align:center;margin:0}.preview-cta{display:block;margin:0 var(--s3) var(--s3);padding:8px;border-radius:var(--r-md);background:var(--primary);color:var(--on-primary);font-size:var(--t-xs);font-weight:700;text-align:center}.preview-bar{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);font-size:var(--t-sm);min-width:0}.preview-bar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-nav{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;font-size:var(--t-xs);font-weight:600;color:var(--text-2);white-space:nowrap}.preview-nav.is-active{background:var(--primary-soft);color:var(--primary)}.admin-split{display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-areas:"main aside";gap:var(--s5);align-items:start}.admin-split-main{grid-area:main;min-width:0}.admin-split-aside{grid-area:aside;position:sticky;top:84px}.table-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:var(--s3);padding:var(--s4)}.table-admin-card{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}@container admin (max-width: 900px){.venue-layout{grid-template-columns:minmax(0,1fr)}.venue-side{position:static}.admin-split{grid-template-columns:minmax(0,1fr);grid-template-areas:"aside" "main"}.admin-split-aside{position:static}}@container admin (max-width: 760px){.device-grid{grid-template-columns:minmax(0,1fr)}.device-col+.device-col{border-left:0;border-top:1px solid var(--line)}}@container admin (max-width: 560px){.form-grid{grid-template-columns:1fr}.venue-section,.device-col,.venue-foot{padding-inline:var(--s4)}.venue-foot .row{width:100%}.venue-foot .row .btn{flex:1}}.setup-dot{width:8px;height:8px;border-radius:50%;background:var(--attention);box-shadow:0 0 0 3px var(--attention-soft)}.setup-check{margin-bottom:var(--s5);border-color:var(--attention);box-shadow:var(--glow-attention)}.setup-steps{list-style:none;margin:0;padding:var(--s2) var(--s4);display:grid}.setup-steps li{display:flex;align-items:center;gap:var(--s3);min-height:48px;border-bottom:1px solid var(--line)}.setup-steps li:last-child{border-bottom:0}.setup-mark{width:24px;height:24px;flex:none;border-radius:50%;border:2px solid var(--line-strong);display:grid;place-items:center}.setup-steps li.is-done{color:var(--muted)}.setup-steps li.is-done .setup-mark{background:var(--good);border-color:var(--good);color:var(--good-soft)}.setup-steps li.is-next{font-weight:700}.setup-steps li.is-next .setup-mark{border-color:var(--attention)}.list-btn{width:100%;text-align:left;padding:var(--s3) var(--s4);border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;display:flex;justify-content:space-between;gap:var(--s2);align-items:center;min-height:52px}.list-btn[aria-current=true]{background:var(--primary-soft);color:var(--primary);font-weight:600}.menu-row{display:grid;grid-template-columns:56px 1fr auto auto;gap:var(--s3);align-items:center;padding:var(--s3) var(--s4);border-bottom:1px solid var(--line)}.menu-row-info{min-width:0;overflow-wrap:anywhere}.menu-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}@media(max-width:600px){.menu-row{grid-template-columns:48px minmax(0,1fr) auto;row-gap:var(--s1)}.menu-row>.thumb,.menu-row>.media-fallback{width:48px;height:48px;grid-row:span 2;align-self:start}.menu-row-info{grid-column:2 / -1}.menu-row-avail{grid-column:2}.menu-row-actions{grid-column:3}.menu-tools>.row{width:100%}.menu-tools>.row .btn{flex:1;justify-content:center}}.thumb{width:56px;height:56px;border-radius:var(--r-sm);object-fit:cover;background:var(--hover);display:grid;place-items:center;color:var(--muted)}.thumb-lg{width:88px;height:88px;flex-shrink:0}.thumb-sm{width:40px;height:40px;flex-shrink:0}.dropzone{position:relative;display:flex;align-items:center;gap:var(--s4);padding:var(--s4);border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:var(--panel);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease)}.dropzone:hover{border-color:var(--primary);background:var(--hover)}.dropzone:focus-visible{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.dropzone.is-dragging{border-style:solid;border-color:var(--primary);background:var(--primary-soft)}.dropzone.is-busy{cursor:progress;opacity:.7}.dropzone.has-image{border-style:solid}.dropzone .thumb{box-shadow:0 0 0 1px var(--line)}.dropzone-body{display:flex;flex-direction:column;gap:var(--s2);min-width:0}.dropzone-body small,.dropzone-empty small{color:var(--muted);font-size:var(--t-xs);font-weight:400}.dropzone-empty{flex:1;display:grid;justify-items:center;gap:var(--s1);padding:var(--s3) 0;text-align:center}.dropzone-empty strong{font-size:var(--t-sm);color:var(--text)}.dropzone-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:var(--s1);border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary)}.dropzone-veil{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border-radius:inherit;background:color-mix(in srgb,var(--primary-soft) 88%,transparent);color:var(--primary);font-weight:600;font-size:var(--t-sm);pointer-events:none}.dropzone .dropzone-error{color:var(--danger)}.media-fallback{display:grid;place-items:center;background:var(--hover);color:var(--muted);overflow:hidden;flex-shrink:0}.media-fallback svg{width:55%;height:55%}.avatar{--av: 32px;width:var(--av);height:var(--av);border-radius:50%;object-fit:cover;flex-shrink:0}.avatar-sm{--av: 24px}.avatar-md{--av: 40px}.avatar-lg{--av: 88px}.avatar-chip{background:var(--primary);color:var(--on-primary);font-family:var(--font-display);font-weight:800;font-size:calc(var(--av) * .4);line-height:1;-webkit-user-select:none;user-select:none}.table-glyph{display:inline-flex;align-items:center;gap:4px}.brand-logo{width:32px;height:32px;border-radius:8px;object-fit:cover;flex-shrink:0}.switch{position:relative;width:48px;height:28px;border-radius:var(--r-pill);background:var(--line-strong);border:0;cursor:pointer;flex-shrink:0;transition:background .15s}.switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .15s var(--ease);box-shadow:0 1px 2px #0000004d}.switch[aria-checked=true]{background:var(--primary)}.switch[aria-checked=true]:after{transform:translate(20px)}.switch:disabled{opacity:.45;cursor:not-allowed}.login{min-height:100%;display:grid;grid-template-columns:1.1fr 1fr}.login-art{background:var(--primary-deep);color:#f2f6f3;padding:var(--s7);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-hero{display:grid;gap:var(--s4);max-width:520px}.login-hero:before{content:"";width:48px;height:4px;border-radius:var(--r-pill);background:var(--attention)}.login-art h1{font-size:clamp(32px,3.6vw,48px);line-height:1.12;letter-spacing:-.01em;max-width:16ch;color:#fff;text-wrap:balance}.login-art p{max-width:44ch;color:#ffffffd1;font-size:var(--t-md);line-height:1.7;text-wrap:pretty}.login-form{display:grid;place-items:center;padding:var(--s6) var(--s4);position:relative}.login-lang{position:absolute;top:var(--s3);right:var(--s3)}.login-form form{width:min(360px,100%);display:grid;gap:var(--s4)}.login-links{text-align:center;font-size:var(--t-sm)}.login-venue{display:flex;align-items:center;gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel)}.login-venue>img{width:40px;height:40px;border-radius:var(--r-sm);object-fit:cover}.login-venue>div{display:grid;flex:1;min-width:0}.login-venue-none{align-items:flex-start}.login-venue-none>svg{flex:none;margin-top:2px;color:var(--muted)}.login-venue strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cust{--cust-bar: 64px;--cust-tabs: 64px;max-width:720px;margin:0 auto;min-height:100%;display:flex;flex-direction:column}.mode-toggle{min-width:40px;padding-inline:var(--s2)}.reco{padding-top:var(--s5)}.reco-title,.cust .cat-title{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-lg);font-weight:700;color:var(--text);line-height:1.4}.reco-title svg{color:var(--primary)}.reco-row{display:grid;grid-auto-flow:column;grid-auto-columns:min(42%,190px);gap:var(--s3);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--s4);margin:0 calc(-1 * var(--s4));padding:var(--s3) var(--s4) var(--s2);scrollbar-width:none}.reco-row>*{scroll-snap-align:start}.cust-chips{position:sticky;top:0;z-index:10;min-height:var(--cust-bar);display:flex;flex-direction:column;justify-content:center;background:var(--bg);margin:var(--s3) calc(-1 * var(--s4)) 0;padding:var(--s3) var(--s4);border-bottom:1px solid var(--line)}.cust-chips .chips{padding:0;min-width:0}.cust-chip-row{gap:var(--s2)}.cust-chips .chips button{border-color:var(--line-strong)}.cust-chips .chips button[aria-pressed=true]{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.icon-round{width:40px;height:40px;flex-shrink:0;border-radius:50%;border:1px solid var(--line-strong);background:var(--panel);color:var(--text);display:grid;place-items:center;cursor:pointer}.cust-search{position:relative;display:block}.cust-search>svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.cust-search .input{padding-left:40px;border-radius:var(--r-pill)}.cat-block{scroll-margin-top:calc(var(--cust-bar-h, var(--cust-bar)) + var(--s2))}.bill-tag{font-family:var(--font-display);font-weight:800;background:var(--primary);color:var(--on-primary);border-radius:8px;padding:4px 10px;font-size:var(--t-md);white-space:nowrap}.chips{display:flex;gap:var(--s2);overflow-x:auto;padding:var(--s3) 0;scrollbar-width:none}.chips button{min-height:40px;padding:0 var(--s4);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--panel);font-weight:600;font-size:var(--t-sm);white-space:nowrap;cursor:pointer}.chips button[aria-pressed=true]{background:var(--text);color:var(--bg);border-color:var(--text)}.cust-body{padding:0 var(--s4) 120px;flex:1}.vendor-section{padding-top:var(--s5);scroll-margin-top:calc(var(--cust-bar-h, var(--cust-bar)) + var(--s2))}.vendor-section>h2{font-size:var(--t-xl);margin-bottom:var(--s1)}.vendor-title{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s1)}.vendor-title h2{font-size:var(--t-xl)}.cust-logo{width:44px;height:44px;border-radius:var(--r-sm);object-fit:cover;flex-shrink:0}.cat-title{font-size:var(--t-sm);font-weight:600;color:var(--muted);margin:var(--s4) 0 var(--s1)}.cust .cat-title{position:sticky;top:calc(var(--cust-bar-h, var(--cust-bar)) - 1px);z-index:9;flex-wrap:wrap;column-gap:var(--s2);row-gap:0;margin:var(--s3) calc(-1 * var(--s4)) var(--s2);padding:var(--s2) var(--s4);background:var(--bg)}.cust .cat-vendor{flex-basis:100%;font-size:var(--t-xs);font-weight:600;color:var(--muted);line-height:1.3}.dish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s3)}@media(min-width:600px){.dish-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.dish-card{display:flex;flex-direction:column;min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:border-color .15s}.dish-card .dish-img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover}.dish-card-body{flex:1;display:flex;flex-direction:column;gap:2px;padding:var(--s2) var(--s3) var(--s3)}.dish-card .dish-name{font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dish-card .dish-desc{font-size:var(--t-xs);color:var(--muted);line-height:1.45;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.dish-card-foot{margin-top:auto;padding-top:var(--s2);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2)}.dish-card .dish-price{color:var(--primary);font-weight:800;font-size:var(--t-md)}.dish-card .add-btn{width:40px;height:40px;border-radius:var(--r-md)}.dish-card .stepper{width:100%;justify-content:space-between}.dish-card.in-cart{border-color:var(--primary)}.dish-card.soldout .dish-img{opacity:.5;filter:grayscale(1)}.dish-card.soldout .dish-name{opacity:.6}.dish-price{font-weight:600}.soldout-tag{display:inline-flex;align-items:center;gap:4px;margin-top:2px;padding:1px 8px;border-radius:var(--r-pill);background:var(--danger-soft);color:var(--danger);font-size:var(--t-xs);font-weight:700}.stepper{display:inline-flex;align-items:center;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--panel)}.stepper button{width:40px;height:40px;border:0;background:none;cursor:pointer;display:grid;place-items:center;border-radius:50%}.stepper span{min-width:24px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}.add-btn{width:44px;height:44px;border-radius:50%;border:0;background:var(--primary);color:var(--on-primary);display:grid;place-items:center;cursor:pointer}.cart-bar{animation:rise .22s var(--ease);position:fixed;left:0;right:0;bottom:0;padding:var(--s3) var(--s4) calc(var(--s3) + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--bg) 70%,transparent);z-index:15}.cart-bar .btn{max-width:688px;margin:0 auto;display:flex;justify-content:space-between}.bottom-tabs{position:sticky;bottom:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;background:var(--panel);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:14}.bottom-tabs button{min-height:56px;border:0;background:none;font-weight:600;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);cursor:pointer}.bottom-tabs button[aria-selected=true]{color:var(--primary);box-shadow:inset 0 3px 0 var(--primary)}.cust .bottom-tabs{box-shadow:0 -2px 12px #0000000f}.cust .bottom-tabs button{min-height:var(--cust-tabs);flex-direction:column;gap:2px;font-size:var(--t-xs)}.cust .bottom-tabs button[aria-selected=true]{box-shadow:none}.tab-icon{position:relative;display:grid;place-items:center}.tab-icon .badge{position:absolute;top:-6px;left:calc(100% - 8px)}.cust-cart-bar{bottom:calc(var(--cust-tabs) + env(safe-area-inset-bottom));padding-bottom:var(--s3)}.tracker-ticket{margin-top:var(--s5)}.track{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr)}.track li{position:relative;display:grid;justify-items:center;gap:4px;text-align:center}.track li+li:before{content:"";position:absolute;top:11px;right:50%;width:100%;height:3px;background:var(--line);z-index:0}.track li.done:before,.track li.now:before{background:var(--primary)}.track-dot{position:relative;z-index:1;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--panel);border:3px solid var(--line-strong);color:var(--on-primary)}.track li.done .track-dot{background:var(--primary);border-color:var(--primary)}.track li.now .track-dot{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.track-label{font-size:var(--t-xs);color:var(--muted);font-weight:600}.track li.now .track-label{color:var(--text)}.thanks-check{color:var(--good);animation:pop-in .36s var(--ease) both}@keyframes pop-in{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.stars{display:inline-flex;gap:2px}.stars button{width:36px;height:36px;border:0;background:none;cursor:pointer;color:var(--line-strong);display:grid;place-items:center}.stars button.on{color:var(--attention)}.cust-menu-only .cust-body{padding-bottom:var(--s8)}.menu-only-note{display:flex;gap:var(--s2);align-items:flex-start;margin:var(--s3) 0;padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary);font-size:var(--t-sm);font-weight:600}.menu-only-note svg{flex-shrink:0;margin-top:2px}.thanks{text-align:center;padding:var(--s8) var(--s4);display:grid;gap:var(--s3);justify-items:center}.thanks .bill-no{font-size:clamp(32px,9vw,64px)}.serve{max-width:640px;margin:0 auto;display:grid;gap:var(--s4)}.serve-tabs button{min-height:48px;font-size:var(--t-md)}.serve-count{min-width:24px;height:24px;padding:0 6px;border-radius:var(--r-pill);background:var(--attention);color:var(--on-attention);font-size:var(--t-xs);font-weight:800;display:inline-grid;place-items:center}.serve-list{display:grid;gap:var(--s4)}.serve-bill{padding:var(--s4);display:grid;gap:var(--s3)}.serve-bill-head{align-items:center;gap:var(--s3)}.serve-where{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-display);font-weight:800;font-size:var(--t-xl);line-height:1.1}.serve-billno{font-size:var(--t-sm);margin-top:calc(-1 * var(--s2))}.serve-wait{flex-shrink:0;padding:2px var(--s2);border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:700;background:var(--hover);color:var(--text-2)}.serve-wait.is-slow{background:var(--attention-soft);color:var(--attention-ink)}.serve-wait.is-late{background:var(--danger-soft);color:var(--danger)}.serve-ticket{display:grid;gap:var(--s3);padding-top:var(--s3);border-top:1px dashed var(--line)}.serve-ticket-head{gap:var(--s2)}.serve-items{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.serve-items li{display:flex;align-items:center;gap:var(--s3);min-height:44px;font-size:var(--t-md)}.serve-qty{min-width:2.5ch;font-weight:800;font-size:var(--t-lg)}.serve-note{display:block;font-size:var(--t-sm);color:var(--attention-ink);font-weight:600}.serve-one{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--panel);color:var(--primary);cursor:pointer}.serve-one:hover{background:var(--primary-soft);border-color:var(--primary)}.serve-one:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.serve-one:disabled{opacity:.5;cursor:progress}.serve-lead{margin:0;font-size:var(--t-sm)}.serve-bills{display:grid;gap:var(--s2)}.serve-bill-btn{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:64px;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:var(--text);text-align:left;cursor:pointer}.serve-bill-btn:hover{border-color:var(--primary)}.serve-bill-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.serve-bill-btn .serve-where{font-size:var(--t-lg)}.serve-bill-meta{display:grid;justify-items:end;font-weight:700}.serve-bill-meta .muted{font-weight:400;font-size:var(--t-xs)}.serve-camera{min-height:56px;font-size:var(--t-md);cursor:pointer}.serve-camera.is-empty{border-style:dashed;border-color:var(--primary);color:var(--primary)}.serve-slip-preview{max-height:240px;width:100%;object-fit:contain;border-radius:var(--r-md);border:1px solid var(--line);background:var(--hover)}.pay-group{display:grid;gap:4px;width:100%;min-height:56px;padding:var(--s3) var(--s4);border:2px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:var(--text);font:inherit;text-align:left;cursor:pointer}.pay-group[aria-checked=true]{border-color:var(--primary);background:var(--primary-soft)}.pay-group:disabled{cursor:default;opacity:.6}.pay-group:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.pay-group-head{display:flex;align-items:center;gap:var(--s2)}.pay-group-dishes{font-size:var(--t-sm);color:var(--muted)}@media(max-width:1024px){.shell{--side-w: 224px}}@media(max-width:767px){.shell,.shell.nav-collapsed{--side-w: min(300px, 85vw);display:block}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--side-w);z-index:40;box-shadow:var(--shadow-pop);transform:translate(-100%);visibility:hidden;transition:transform .22s var(--ease),visibility 0s linear .22s}.nav-open .sidebar{transform:none;visibility:visible;transition:transform .22s var(--ease)}.side-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:39;background:#00000073}.sidebar .side-close{display:inline-flex}.sidebar .side-toggle{display:none}.nav-collapsed .side-head{justify-content:flex-start;padding-inline:var(--s4)}.nav-collapsed .side-brand{display:flex}.topbar .nav-toggle{display:inline-flex;margin-left:calc(-1 * var(--s2))}.nav-collapsed .side-nav,.nav-collapsed .side-foot{padding-inline:var(--s3)}.nav-collapsed .side-link{justify-content:flex-start;padding:0 var(--s3)}.nav-collapsed .side-group-title{height:auto;margin:0 0 var(--s1);padding:0 var(--s3);background:none;color:var(--muted)}.nav-collapsed .side-label{position:static;width:auto;height:auto;clip:auto}.topbar .topbar-brand{display:flex;flex:0 1 auto;min-width:0}.topbar-brand>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media(max-width:480px){.topbar-inner{column-gap:var(--s1)}.brand{font-size:var(--t-md)}.needs-pill{padding:0 var(--s2);font-size:var(--t-xs)}.page{padding-top:var(--s4)}.page-head{margin-bottom:var(--s4)}.page-head h1{font-size:var(--t-xl)}.page-head>.btn,.page-head>.row{width:100%}.page-head>.btn{justify-content:center}.page-head>.row>.btn{flex:1 1 auto}}@media(max-width:400px){.topbar-brand>span{display:none}}@media(max-width:1100px){.floor-layout{grid-template-columns:minmax(0,1fr)}.floor-side{position:static;max-height:none}.bill-layout{grid-template-columns:minmax(0,1fr)}.bill-side{position:static}}@media(max-width:900px){.board{grid-template-columns:minmax(0,1fr)}.needs-panel{position:static;max-height:none}.login{grid-template-columns:1fr}.login-art{min-height:220px;padding:var(--s5)}.login-art h1{font-size:28px}.login-hero{gap:var(--s3)}}@media(max-width:480px){.btn{white-space:normal;text-align:center;line-height:1.25;padding-block:var(--s1)}table.data th,table.data td{padding-inline:var(--s2)}.kitchen-board .ticket-no{font-size:var(--t-3xl)}.dialog-head,.dialog-body,.dialog-foot{padding-inline:var(--s4)}.dialog-foot>.btn{flex:1 1 auto}.line{grid-template-columns:minmax(0,1fr) auto;row-gap:var(--s1)}.line>:first-child{grid-column:1 / -1}.sum-row.total{font-size:clamp(var(--t-xl),7vw,var(--t-2xl));gap:var(--s3)}.sum-row.total .num{white-space:nowrap}}.page-head>.menu-wrap{margin-left:auto}.page-head>.row{flex-wrap:wrap}.bill-actions{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:flex-end;gap:var(--s2)}.bill-actions .is-main{order:1}.bill-actions>.menu-wrap{order:2;display:flex}.bill-action>svg,.bill-actions .menu-btn>svg{flex:none}@media(max-width:600px){.bill-actions{width:100%;justify-content:stretch}.bill-actions .is-main{order:-1;flex:1 1 100%;min-height:52px;font-size:var(--t-md);border-radius:12px}.bill-actions>.bill-action:not(.is-main){flex:1 1 0;min-width:0}.bill-actions>.btn.bill-action:not(.is-main),.bill-actions>.menu-wrap>.btn{flex-direction:column;justify-content:center;gap:6px;width:100%;min-height:68px;padding:var(--s2) var(--s1);border-radius:12px;font-size:var(--t-xs);line-height:1.25;white-space:normal;text-align:center;overflow-wrap:anywhere}.bill-actions>.btn.bill-action:not(.is-main)>svg,.bill-actions>.menu-wrap>.btn>svg{color:var(--primary)}}@media(hover:none){.table-tile.is-free .tile-cta{opacity:1}}@media(pointer:coarse){.btn-sm,.chips button,.segmented button,.sound-option{min-height:44px}.notes-foot .icon-btn{min-width:44px}.order-move .icon-btn{min-width:40px;min-height:40px}.stars button,.stepper button,.dish-card .add-btn{width:44px;height:44px}}@media(max-height:500px)and (orientation:landscape){.topbar{position:static}.needs-panel,.bill-side,.floor-side,.admin-split-aside,.venue-side,.audit-side{position:static;max-height:none}.login-art{min-height:0}}@supports (padding: max(0px)){.topbar-inner,.page,.cust-body,.cust-top{padding-left:max(var(--s4),env(safe-area-inset-left));padding-right:max(var(--s4),env(safe-area-inset-right))}}@media(min-width:1600px){.page:has(.kitchen-board){max-width:1920px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media print{body *{visibility:hidden}.printable,.printable *{visibility:visible}.printable{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}}.sound-list{display:grid;gap:var(--s1);margin-bottom:var(--s2)}.sound-option{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:0 var(--s3);border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);font-weight:600;cursor:pointer}.sound-option:hover{background:var(--hover)}.sound-option[aria-pressed=true]{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.sound-custom{display:flex;gap:var(--s1);align-items:center}.sound-custom .sound-option{flex:1;min-width:0}.sound-custom-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sound-upload{border-style:dashed;color:var(--text-2)}.sound-upload:disabled{opacity:.6;cursor:progress}.receipt{background:#fff;color:#111;font-family:var(--font-body, system-ui),sans-serif;font-size:12px;line-height:1.45;padding:12px 10px;margin:0 auto;box-sizing:border-box}.receipt-80{width:80mm}.receipt-58{width:58mm;font-size:11px}.receipt hr{border:0;border-top:1px dashed #111;margin:8px 0}.receipt-logo{display:block;max-width:40%;max-height:64px;margin:0 auto 6px;object-fit:contain;filter:grayscale(1)}.receipt-venue{text-align:center;font-weight:800;font-size:1.3em}.receipt-header,.receipt-footer{text-align:center;white-space:pre-line}.receipt-title{text-align:center;font-weight:800;font-size:1.15em;text-transform:uppercase;letter-spacing:.04em}.receipt-code{text-align:center;font-weight:800;font-size:2em;letter-spacing:.12em;margin:4px 0 8px}.receipt-row{display:flex;justify-content:space-between;gap:8px}.receipt-row>span:last-child{text-align:right;white-space:nowrap}.receipt-row.is-strong{font-weight:800;font-size:1.2em;margin:2px 0}.receipt-items{display:grid;grid-template-columns:auto 1fr auto auto auto;column-gap:6px;row-gap:3px;align-items:start}.receipt-items>:nth-child(5n+3){text-align:center}.receipt-items>:nth-child(5n+4),.receipt-items>:nth-child(5n){text-align:right;white-space:nowrap}.receipt-items-head{font-size:.9em;padding-bottom:2px;white-space:nowrap}.receipt-items s{display:block;opacity:.6}.receipt-sum{display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:2px}.receipt-sum>span{text-align:right;white-space:nowrap}.receipt-sum>span:nth-of-type(odd){white-space:normal}.receipt-sum hr{grid-column:1 / -1}.receipt-sum .is-bold{font-weight:700}.receipt-sum .is-strong{font-weight:800;font-size:1.2em}.receipt-paid{text-align:center}.receipt-where{text-align:center;font-weight:800;font-size:1.5em;margin-top:4px}.receipt-info{margin-top:4px}.receipt-stamp{display:grid;gap:2px;margin:4px 6px 6px;padding:6px;border:2px solid #111;text-align:center;font-weight:700}.receipt-stamp-title{font-size:2em;font-weight:900;letter-spacing:.12em;line-height:1.2}.receipt-payqr{display:grid;justify-items:center;gap:4px;text-align:center}.receipt-payqr-title{font-weight:800}.receipt-payqr img{width:40mm;max-width:100%;image-rendering:pixelated}.receipt-payqr-caption{white-space:pre-line}.receipt-stage{display:grid;justify-content:safe center;padding:var(--s4);background:var(--hover);border-radius:var(--r-md);overflow-x:auto}.receipt-stage .receipt{box-shadow:var(--shadow-card)}#print-root{display:none}@media print{body>*:not(#print-root){display:none!important}#print-root{display:block}#print-root .receipt{margin:0;padding:4mm 3mm}html,body{background:#fff!important}}.promo-box{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3) var(--s4);margin:0;display:grid;gap:var(--s3);min-width:0}.promo-box legend{float:left;padding:0;font-weight:700}.promo-preview{margin:0;font-weight:600;color:var(--primary)}.promo-price{color:var(--chili-600, var(--danger))}.promo-tag{display:inline-flex;align-items:center;gap:4px;margin-top:2px;padding:1px 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--muted);font-size:var(--t-xs);font-weight:600}.promo-tag.is-running{background:var(--danger-soft);color:var(--danger)}.dish-card{position:relative}.dish-promo{position:absolute;top:8px;left:8px;right:8px;display:flex;flex-direction:column;align-items:flex-start;gap:4px;pointer-events:none}.dish-promo-badge{padding:2px 10px;border-radius:var(--r-pill);background:var(--chili-600, var(--danger));color:#fff;font-weight:800;font-size:var(--t-xs);box-shadow:var(--shadow-card)}.dish-promo-label{max-width:100%;padding:2px 8px;border-radius:var(--r-sm, 6px);background:#000000a6;color:#fff;font-weight:600;font-size:var(--t-xs);line-height:1.3;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dish-price-promo{display:inline-flex;align-items:baseline;gap:6px;flex-wrap:wrap}.dish-price-promo s{font-size:var(--t-xs)}.deposit-tools{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;margin-bottom:var(--s3)}.search-field{position:relative;display:flex;align-items:center;flex:0 0 auto;width:100%;max-width:480px}.toolbar .search-field,.row .search-field{flex:1 1 280px;width:auto}.stack>.search-field,.modal .search-field{max-width:none}.search-field svg{position:absolute;left:12px;color:var(--muted);pointer-events:none}.search-field .input{padding-left:40px;width:100%}.date-range{display:inline-flex;align-items:center;gap:var(--s2);padding:0 var(--s2) 0 var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:var(--muted)}.date-range .input{border:0;background:transparent;min-height:44px;padding:0 var(--s1);width:auto;box-shadow:none}.deposit-note{font-size:var(--t-sm)}.deposit-body{margin-top:var(--s4)}.deposit-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr));gap:var(--s4);align-items:start}.deposit-card{display:grid;gap:var(--s3);padding:var(--s4);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);border-top:4px solid var(--primary)}.deposit-card.is-expired{border-top-color:var(--attention)}.deposit-card.is-taken,.deposit-card.is-discarded{border-top-color:var(--line-strong)}.deposit-card.is-taken .deposit-items,.deposit-card.is-discarded .deposit-items{color:var(--muted)}.deposit-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s2)}.deposit-code{display:block;font-family:var(--font-display);font-size:var(--t-xl, 1.4rem);letter-spacing:.08em;line-height:1.1}.deposit-bill{font-size:var(--t-sm);color:var(--muted)}.deposit-items{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-weight:600}.deposit-items li{display:flex;gap:var(--s2);align-items:center}.deposit-qty{min-width:2.2em;color:var(--primary);font-weight:800}.deposit-card-note{margin:0}.deposit-who{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;font-size:var(--t-sm);color:var(--text-2)}.deposit-who svg{color:var(--muted)}.deposit-who a{color:inherit}.deposit-dates{display:grid;grid-template-columns:1fr 1fr;gap:var(--s3);margin:0;padding-top:var(--s3);border-top:1px dashed var(--line-strong)}.deposit-dates dt{font-size:var(--t-xs);color:var(--muted);font-weight:600}.deposit-dates dd{margin:2px 0 0;font-weight:600;display:grid}.deposit-dates small{font-weight:500;color:var(--muted);font-size:var(--t-xs)}.deposit-dates .is-urgent dd,.deposit-dates .is-urgent small{color:var(--danger)}.deposit-card-foot{display:flex;gap:var(--s2);align-items:center}.deposit-pick{display:grid;gap:var(--s2)}.field-label{font-weight:600;font-size:var(--t-sm)}.list-btn.deposit-summary{display:grid;justify-content:stretch;gap:var(--s1);padding:var(--s2) 0;font-size:var(--t-sm)}@media(max-width:560px){.date-range{width:100%}.date-range .input{flex:1;min-width:0}.search-field{max-width:none}}@media(max-width:400px){.date-range{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0}.date-range>svg,.date-range>span{display:none}.date-range .input{padding-inline:var(--s2)}.date-range .input+span+.input{border-left:1px solid var(--line);border-radius:0}}.venue-section h4{margin:0}.printer-picker{width:auto;min-width:0;margin-right:auto}.printer-card{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md)}.printer-address{grid-template-columns:minmax(0,1fr) 120px}.printer-guide details{border-top:1px solid var(--line);padding-top:var(--s3)}.printer-guide summary{display:flex;align-items:center;gap:var(--s2);font-weight:600;cursor:pointer;min-height:40px}.printer-guide ol{margin:var(--s2) 0 0;padding-left:1.4em;display:grid;gap:var(--s2);font-size:var(--t-sm)}.slip-img{display:block;background:#fff;box-shadow:var(--shadow-card);max-width:100%}#print-root .slip-img{box-shadow:none;margin:0}@media(max-width:420px){.printer-address{grid-template-columns:1fr}}.audit-filters{padding:0 var(--s4) var(--s4);margin-bottom:var(--s4)}.audit-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,2fr);gap:var(--s3);align-items:end}.audit-search>label{font-size:var(--t-sm);font-weight:600;color:var(--text-2)}.audit-search-box{position:relative;display:block}.audit-search-box svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.audit-search-box .input{width:100%;padding-left:36px}.audit-active{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3);font-size:var(--t-sm)}@media(max-width:1000px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-search{grid-column:1 / -1}}@container admin (max-width: 860px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-search{grid-column:1 / -1}}@media(max-width:400px){.audit-filter-grid{grid-template-columns:minmax(0,1fr)}}.audit-table td{vertical-align:top}.audit-col-when{width:1%;white-space:nowrap;color:var(--muted)}.audit-day{display:block;font-size:var(--t-xs)}.audit-record{display:inline-flex;flex-direction:column;gap:4px}.audit-kind{font-size:var(--t-xs);font-weight:600;color:var(--muted)}.audit-bill-facts{gap:var(--s2);font-size:var(--t-xs)}.audit-step-cell{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--s2);min-width:220px}.audit-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px 2px 8px;border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:600;white-space:nowrap}.audit-pill.tone-ok{background:var(--primary-soft);color:var(--primary)}.audit-pill.tone-warn{background:var(--attention-soft);color:var(--attention-ink)}.audit-pill.tone-bad{background:var(--danger-soft);color:var(--danger)}.audit-pill.tone-info{background:var(--hover);color:var(--text-2)}.audit-more{font-size:var(--t-xs);color:var(--muted)}.audit-desc{flex-basis:100%;color:var(--text-2);max-width:64ch}.audit-by{white-space:nowrap}.audit-pager{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s4);border-top:1px solid var(--line)}.audit-bill-link{text-decoration:none}.audit-bill-link:hover strong{text-decoration:underline}.audit-bill-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s2);padding:var(--s3) 0;font-size:var(--t-sm)}.audit-bill-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--s5);align-items:start}.audit-bill{padding:0;min-width:0}.audit-side{display:grid;gap:var(--s4);position:sticky;top:calc(var(--s5) + 56px)}.audit-side-card{padding:var(--s4) var(--s5)}.audit-side-title{margin:0 0 var(--s3);font-size:var(--t-sm);font-weight:600;color:var(--muted)}.audit-side-total{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-bottom:var(--s3);margin-bottom:var(--s3);border-bottom:1px solid var(--line)}.audit-side-total strong{font-size:var(--t-xl);font-weight:700;color:var(--text)}.audit-facts{display:grid;grid-template-columns:1fr auto;gap:var(--s2) var(--s3);margin:0;font-size:var(--t-sm)}.audit-facts dt{color:var(--muted)}.audit-facts dd{margin:0;text-align:right;color:var(--text);font-weight:500}.audit-facts-split{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}.audit-owed{color:var(--danger)!important}.audit-people{list-style:none;margin:0;padding:0;display:grid;gap:var(--s3);font-size:var(--t-xs)}.audit-person{display:flex;align-items:center;gap:var(--s2)}.audit-person-role{color:var(--muted)}.audit-person-n{margin-left:auto;color:var(--text-2);font-weight:600;white-space:nowrap}.audit-person-bar{display:block;height:4px;margin-top:6px;border-radius:2px;background:var(--hover);overflow:hidden}.audit-person-bar>span{display:block;height:100%;border-radius:2px;background:var(--who, var(--muted))}.audit-side-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);padding:var(--s3) var(--s4)}@media(max-width:1000px){.audit-bill-layout{grid-template-columns:minmax(0,1fr)}.audit-side{position:static;grid-row:1;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}}.audit-bill-caption{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s2) var(--s4);padding:var(--s3) var(--s5);border-bottom:1px solid var(--line)}.audit-bill-caption h2{margin:0;font-size:var(--t-sm);font-weight:600;color:var(--muted)}.audit-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--s1) var(--s3);font-size:var(--t-xs)}.audit-legend li{display:inline-flex;align-items:center;gap:4px;font-weight:600;color:color-mix(in oklab,var(--who) 75%,var(--text))}.audit-trail{--time-w: 48px;list-style:none;margin:0;padding:var(--s5);display:grid}.audit-trail.with-date{--time-w: 84px}.audit-step{position:relative;display:grid;grid-template-columns:var(--time-w) 32px 1fr;column-gap:var(--s3);padding-bottom:var(--s5)}.audit-step:last-child{padding-bottom:0}.audit-step:not(:last-child):before{content:"";position:absolute;left:calc(var(--time-w) + var(--s3) + 15px);top:36px;bottom:4px;width:2px;border-radius:1px;background:var(--line)}.audit-step-time{padding-top:7px;text-align:right;font-size:var(--t-sm);font-weight:600;color:var(--text-2);line-height:1.3}.audit-step-day{display:block;font-size:var(--t-xs);font-weight:400;color:var(--muted)}.audit-step-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--hover);color:var(--text-2);border:1px solid var(--line)}.audit-step.tone-ok .audit-step-icon{background:var(--primary-soft);color:var(--primary);border-color:transparent}.audit-step.tone-warn .audit-step-icon{background:var(--attention-soft);color:var(--attention-ink);border-color:transparent}.audit-step.tone-bad .audit-step-icon{background:var(--danger-soft);color:var(--danger);border-color:transparent}.audit-step.tone-bad .audit-step-title{color:var(--danger)}.audit-step-body{min-width:0;padding-top:5px}.audit-step-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s1) var(--s2)}.audit-step-title{font-size:var(--t-md);font-weight:600;color:var(--text);line-height:1.4}.audit-step-text{margin:var(--s1) 0 0;color:var(--text-2);font-size:var(--t-sm);line-height:1.55;overflow-wrap:anywhere;max-width:64ch}.audit-part+.audit-part:before{content:"·";margin:0 var(--s2);color:var(--muted)}.audit-same{color:var(--muted);font-style:italic}.who-admin{--who: #a855f7}.who-manager{--who: #10b981}.who-counter{--who: #3b82f6}.who-kitchen{--who: #f97316}.who-waiter{--who: #06b6d4}.who-customer{--who: #ec4899}.who-staff,.who-system{--who: var(--muted)}.audit-who{display:inline-flex;align-items:center;gap:4px;padding:1px var(--s2) 1px 6px;border-radius:var(--r-pill);border:1px solid color-mix(in oklab,var(--who, var(--muted)) 35%,transparent);background:color-mix(in oklab,var(--who, var(--muted)) 14%,transparent);color:color-mix(in oklab,var(--who, var(--muted)) 75%,var(--text));font-size:var(--t-xs);font-weight:600;white-space:nowrap}.audit-who svg{flex:none}@media(max-width:560px){.audit-bill-caption{padding:var(--s3) var(--s4)}.audit-trail{--time-w: 40px;padding:var(--s4)}.audit-trail.with-date{--time-w: 72px}.audit-step{column-gap:var(--s2)}.audit-step:not(:last-child):before{left:calc(var(--time-w) + var(--s2) + 15px)}.audit-step-time{font-size:var(--t-xs)}}.dialog.dialog-take{height:calc(var(--vv-h, 100dvh) - 32px);display:flex;flex-direction:column;overflow:hidden}.dialog-take .dialog-body{flex:1;min-height:0;padding:0;display:flex;flex-direction:column}.dialog-take .dialog-foot{align-items:center}.take-sum{margin-right:auto;font-size:var(--t-md)}.take-switch{display:none;margin:var(--s3) var(--s4) 0}.take-order{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px}.take-pick,.take-cart{min-height:0;overflow-y:auto}.take-pick{padding:0 var(--s5) var(--s5)}.take-cart{padding:var(--s4) var(--s5);border-left:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;gap:var(--s4)}.take-tools{position:sticky;top:0;z-index:1;background:var(--panel);padding-top:var(--s4);display:grid;gap:var(--s1)}.take-tools .chips{padding:var(--s2) 0}.take-vendor>h3{font-size:var(--t-lg);margin-top:var(--s4)}.take-vendor .cat-title{margin:var(--s4) 0 var(--s2)}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:var(--s2)}.pick-tile{position:relative;display:flex;align-items:center;gap:var(--s3);min-height:72px;padding:var(--s2) var(--s3) var(--s2) var(--s2);text-align:left;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:border-color .15s,background-color .15s,transform .15s var(--ease)}.pick-tile:hover:not(:disabled){border-color:var(--line-strong);background:var(--hover)}.pick-tile:active:not(:disabled){transform:scale(.98)}.pick-tile.in-cart{border-color:var(--primary);background:var(--primary-soft)}.pick-tile:disabled{cursor:not-allowed}.pick-tile:disabled .pick-img,.pick-tile:disabled .pick-name{opacity:.5}.pick-img{width:52px;height:52px;flex:none;border-radius:var(--r-sm);object-fit:cover;display:grid;place-items:center;background:var(--hover);color:var(--muted)}.pick-text{min-width:0;display:grid;gap:2px}.pick-name{font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pick-price{display:inline-flex;gap:var(--s2);align-items:baseline;color:var(--primary);font-weight:700;font-size:var(--t-sm)}.pick-price s{font-weight:400;font-size:var(--t-xs)}.pick-qty{position:absolute;top:-8px;right:-6px;min-width:26px;height:26px;padding:0 7px;border-radius:var(--r-pill);background:var(--primary);color:var(--on-primary);font-size:var(--t-sm);font-weight:800;display:grid;place-items:center;box-shadow:0 0 0 2px var(--panel)}.take-cart>h3{font-size:var(--t-lg)}.take-line{display:grid;gap:var(--s2);padding-bottom:var(--s3);border-bottom:1px solid var(--line)}@media(max-width:860px){.dialog.dialog-take{height:100dvh;max-height:100dvh;border-radius:0}.overlay:has(.dialog-take){padding:0}.take-switch{display:grid}.take-order{grid-template-columns:minmax(0,1fr)}.take-order[data-pane=menu] .take-cart,.take-order[data-pane=cart] .take-pick{display:none}.take-pick{padding:0 var(--s4) var(--s4)}.take-cart{border-left:0;padding:var(--s4)}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(min(160px,100%),1fr))}.take-sum{flex-basis:100%}.dialog-take .dialog-foot .btn{flex:1;justify-content:center}}.role-pick,.perm-group{border:0;padding:0;margin:0;min-width:0;display:grid;gap:var(--s2)}.role-pick legend{font-size:var(--t-sm);font-weight:600;color:var(--text-2);padding:0;margin-bottom:var(--s1)}.role-options{display:grid;gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}.role-option{display:flex;align-items:center;gap:var(--s3);min-height:56px;padding:var(--s2) var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);cursor:pointer;transition:border-color .15s,background .15s}.role-option input{width:20px;height:20px;flex:none;accent-color:var(--primary)}.role-option.is-on{border-color:var(--primary);background:var(--primary-soft)}.role-option:focus-within{outline:2px solid var(--primary);outline-offset:2px}.role-option.is-disabled,.perm-row.is-disabled{opacity:.55;cursor:not-allowed}.role-option-text{display:grid;gap:2px;flex:1;min-width:0}.role-option-text small{color:var(--muted);font-size:var(--t-xs)}.scope-tag{display:inline-flex;align-items:center;padding:2px var(--s2);border-radius:var(--r-pill);font-size:var(--t-xs);font-weight:600;white-space:nowrap;background:var(--attention-soft, var(--hover));color:var(--text)}.scope-tag.is-venue{background:var(--hover);color:var(--text-2)}.perm-group{padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);gap:0}.perm-group-head{display:flex;align-items:center;gap:var(--s2);width:100%;padding:0 var(--s1);font-weight:700}.perm-row{align-items:flex-start;padding:var(--s2) 0;border-top:1px solid var(--line)}.perm-row input{margin-top:2px;flex:none}.perm-row span{display:grid;gap:2px}.perm-row small{font-size:var(--t-xs)}.perm-all{font-weight:600;color:var(--text-2)}.req-page{max-width:1200px;margin:0 auto;display:grid;gap:var(--s4)}.req-head{gap:var(--s3);align-items:flex-end}.req-title{margin:0;font-family:var(--font-display);font-size:var(--t-2xl)}.req-head p{margin:var(--s1) 0 0}.req-board{display:grid;gap:var(--s4);grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));align-items:start}.req-card{padding:var(--s4);display:grid;gap:var(--s3)}.req-card.is-late{box-shadow:inset 0 4px 0 var(--danger),var(--shadow-card)}.req-card-head{align-items:center;gap:var(--s3)}.req-list{list-style:none;margin:0;padding:0;display:grid}.req-row{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) 0;border-top:1px dashed var(--line)}.req-icon{flex-shrink:0;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary)}.req-icon-lg{width:56px;height:56px}.req-icon.kind-song,.req-icon.kind-other{background:var(--attention-soft);color:var(--attention-ink)}.req-icon.kind-call_staff{background:var(--good-soft);color:var(--good)}.req-body{flex:1;min-width:0;display:grid;gap:2px}.req-kind{font-weight:700;font-size:var(--t-md)}.req-note{font-weight:600;color:var(--attention-ink);overflow-wrap:anywhere}.req-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);color:var(--muted);font-size:var(--t-sm);font-variant-numeric:tabular-nums}.req-done{flex-shrink:0;min-height:48px;min-width:88px;gap:var(--s1)}.req-history{list-style:none;margin:0;padding:0}.req-history li{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-top:1px solid var(--line)}.req-history li:first-child{border-top:0}.req-history .req-icon{width:32px;height:32px}.req-outcome{display:grid;justify-items:end;gap:2px;flex-shrink:0}.req-outcome .chip{display:inline-flex;align-items:center;gap:4px}@media(max-width:480px){.req-outcome{justify-items:start}.req-history li{flex-wrap:wrap}}.req-section-title{margin:0 0 var(--s1);font-family:var(--font-display);font-size:var(--t-lg)}.req-tiles{margin-top:var(--s3);display:grid;gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.req-tile{min-height:112px;display:grid;justify-items:center;align-content:center;gap:var(--s2);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);color:var(--text);font:inherit;font-weight:700;text-align:center;cursor:pointer;box-shadow:var(--shadow-card);transition:transform .15s var(--ease),border-color .15s var(--ease)}.req-tile:hover{border-color:var(--primary)}.req-tile:active{transform:scale(.97)}.req-tile:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.req-tile-label{line-height:1.25}.req-sheet-kind{display:flex;align-items:center;gap:var(--s3)}.req-sheet-kind p{margin:0}.req-mine{list-style:none;margin:var(--s2) 0 0;padding:0}.req-mine li{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-top:1px solid var(--line)}.req-mine li:first-child{border-top:0}.req-status{justify-self:start;display:inline-flex;align-items:center;gap:4px;margin-top:2px}.req-cancel{flex-shrink:0;min-height:44px}@media(prefers-reduced-motion:reduce){.req-tile{transition:none}.req-tile:active{transform:none}}.sub-strip{display:flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--s1) var(--s4);font-size:var(--t-sm);font-weight:600;text-align:center}.sub-strip-warn{background:var(--attention-soft);color:var(--attention-ink);border-top:1px solid var(--attention)}.sub-strip-danger{background:var(--danger-soft);color:var(--danger);border-top:1px solid var(--danger)}.plan-flags{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px 16px}.plan-flags li{display:flex;align-items:center;gap:6px;font-size:14px}.plan-flags li.off{color:var(--muted)}.cust-powered{text-align:center;font-size:12px;margin:var(--s6) 0 0}.bill-view-toggle{max-width:420px}.summary-lines{list-style:none;margin:0;padding:0}.summary-line{display:grid;grid-template-columns:48px 40px 1fr auto;gap:var(--s3);align-items:center;padding:var(--s3) 0;border-top:1px solid var(--line)}.summary-line:first-child{border-top:0;padding-top:0}.summary-qty{font-family:var(--font-display);font-weight:800;font-size:var(--t-lg)}.summary-what{display:grid;gap:2px;min-width:0}.summary-name{font-weight:600;overflow-wrap:anywhere}.summary-sub{display:flex;flex-wrap:wrap;gap:4px var(--s2);font-size:var(--t-sm);color:var(--muted)}.summary-progress.is-attention{color:var(--attention-ink);font-weight:600}.summary-total{font-weight:700;white-space:nowrap}.summary-count{padding-top:var(--s2);border-top:1px solid var(--line);margin-top:var(--s2);font-size:var(--t-sm)}.bill-history-link{justify-self:start}.qty-editor{display:flex;align-items:center;justify-content:center;gap:var(--s5);padding:var(--s2) 0}.qty-editor .btn{min-width:56px;min-height:56px}.qty-editor-value{font-family:var(--font-display);font-size:var(--t-2xl);min-width:120px;text-align:center}.orders-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s5);align-items:start;margin-top:var(--s4)}.orders-board.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.orders-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--s4);margin-top:var(--s4);align-items:start}.order-card{gap:var(--s3)}.order-card-no{font-family:var(--font-display);font-size:var(--t-2xl);font-weight:800;line-height:1}.order-card-where{display:inline-flex;align-items:center;gap:6px;margin-top:4px;font-weight:600;min-height:32px}.order-card-line{display:flex;align-items:center;gap:var(--s2);min-height:32px}.order-card-line>.num{font-weight:700;min-width:32px}.order-card-line.is-cancelled .grow{text-decoration:line-through;color:var(--muted)}.order-card-note{display:block;font-style:normal;font-size:var(--t-sm);color:var(--attention-ink)}.order-card-line-tags{display:grid;justify-items:end;gap:4px;flex:none}.pace-tag{--pace: var(--muted);display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:var(--t-xs);font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;background:color-mix(in srgb,var(--pace) 14%,transparent);color:color-mix(in srgb,var(--pace) 82%,var(--text))}.pace-tag.is-live{box-shadow:inset 0 0 0 1px var(--pace)}.pace-editor{border:0;border-top:1px solid var(--hover);margin:0;padding:var(--s3) 0 0;min-width:0}.pace-rules{display:grid;gap:var(--s2)}.pace-rule{display:grid;grid-template-columns:auto 52px minmax(0,1fr) auto auto;align-items:center;gap:var(--s2)}.pace-rule .input-color{width:52px;height:40px;padding:2px;border-radius:8px;cursor:pointer}.pace-from{display:flex;align-items:center;gap:var(--s1);white-space:nowrap}.pace-from .input{width:80px}.pace-preview{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}@media(max-width:640px){.pace-rule{grid-template-columns:1fr 52px auto}.pace-rule .pace-label{grid-column:1 / -1}}@media(max-width:1100px){.orders-board{grid-template-columns:1fr 1fr}.orders-board .col-ready{grid-column:1 / -1}}@media(max-width:760px){.orders-board,.orders-board.cols-2{grid-template-columns:1fr}}.dish-hours{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-xs);color:var(--muted)}.hours-tag{background:var(--hover);color:var(--muted)}.weigh-scan{position:relative;width:100%;max-width:420px;margin:0 auto;aspect-ratio:1;border-radius:var(--r-lg);overflow:hidden;background:#000}.weigh-scan video{width:100%;height:100%;object-fit:cover;display:block}.weigh-scan-frame{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:3px solid #fff;border-radius:var(--r-md);box-shadow:0 0 0 999px #00000059;pointer-events:none}.weigh-bills{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s2);max-height:50vh;overflow-y:auto}.weigh-bill{display:flex;align-items:center;gap:var(--s2);min-height:56px;padding:var(--s2) var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);color:var(--text);font:inherit;text-align:left;cursor:pointer}.weigh-bill:hover{border-color:var(--primary)}.weigh-input{font-family:var(--font-display);font-size:var(--t-2xl);font-weight:800;text-align:center;min-height:64px}.weigh-figure{display:grid;justify-items:center;gap:2px;padding:var(--s4);border-radius:var(--r-lg);background:var(--hover);text-align:center}.weigh-figure>b{font-family:var(--font-display);font-size:var(--t-3xl);line-height:1.1}.weigh-figure .weigh-amount{font-size:var(--t-2xl);color:var(--primary)}.weigh-photo{display:flex;align-items:center;justify-content:center;gap:var(--s2);min-height:56px}.weigh-photo img{width:48px;height:48px;object-fit:cover;border-radius:var(--r-sm)}.weigh-photo-full{display:block;width:100%;height:auto;border-radius:var(--r-md)}.weigh-done{display:grid;justify-items:center;gap:var(--s3);text-align:center;color:var(--text)}.weigh-done>svg{color:var(--primary)}.weigh-bill-name{font-family:var(--font-display);font-weight:800;font-size:var(--t-xl)}.weigh-done .weigh-figure{width:100%}.weigh-hint{color:var(--attention-ink);font-weight:600}.dish-card .weigh-how{min-height:40px}.weigh-banner{align-items:flex-start;margin:0 0 var(--s3)}.weigh-banner svg{flex:none;margin-top:2px}.weigh-steps{margin:0;padding-left:var(--s5);display:grid;gap:var(--s2)}.weighed-line{display:grid;gap:var(--s1);padding-top:var(--s3);border-top:1px solid var(--line)}.weighed-grams{font-weight:700}.weighed-info{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);margin-top:2px;font-size:var(--t-sm);color:var(--muted)}.weigh-tag{background:var(--attention-soft);color:var(--attention-ink)}.weigh-disputes{border:1px solid var(--danger)}.weigh-disputes h3{color:var(--danger)}.summary-line.is-weighed{grid-template-columns:48px auto 1fr auto}.summary-line.is-weighed .summary-qty{font-size:var(--t-md)}.weigh-report{display:block;font-size:var(--t-xs)}.option-sheet .option-photo{width:100%;height:auto;max-height:220px;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--r-md)}.option-list{border:0;margin:0;padding:0;display:grid;gap:var(--s2);min-width:0}.option-list.is-nested{padding-inline-start:var(--s3);border-inline-start:2px solid var(--line-strong)}.option-list legend{width:100%;padding:0 0 var(--s1);font-size:var(--t-sm);font-weight:700}.option-rule{color:var(--muted);font-size:var(--t-xs);font-weight:600}.option-rule.is-needed{color:var(--attention-ink)}.option-opt{display:flex;align-items:center;gap:var(--s3);min-height:52px;padding:var(--s2) var(--s4);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);cursor:pointer}.option-opt:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px var(--primary)}.option-opt input{width:22px;height:22px;flex:none;accent-color:var(--primary)}.option-opt .option-name{flex:1;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);font-weight:700}.option-opt .option-name .soldout-tag{margin-top:0}.option-opt .option-price{color:var(--primary);font-weight:800}.option-opt.soldout,.option-opt:has(input:disabled){cursor:not-allowed}.option-opt.soldout .option-name,.option-opt.soldout .option-price{opacity:.55}.option-hint{color:var(--primary);font-weight:600}.option-group{min-width:0;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel);overflow:hidden}.option-group-bar{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s2) var(--s2) var(--s3);background:var(--hover);border-bottom:1px solid var(--line)}.option-group-icon{flex:none;width:36px;height:36px;border-radius:var(--r-sm);display:grid;place-items:center;background:var(--primary-soft);color:var(--primary)}.option-group-title{flex:1;min-width:0;display:grid;gap:2px}.option-group-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--t-md)}.option-group-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);font-size:var(--t-xs)}.option-rule-chip{display:inline-flex;align-items:center;padding:1px 8px;border-radius:var(--r-pill);background:var(--panel);border:1px solid var(--line-strong);color:var(--text-2);font-weight:600}.option-rule-chip.is-required{border-color:var(--primary);color:var(--primary)}.option-group-bar .chevron-open{transform:rotate(180deg)}.option-group-bar svg{transition:transform .15s var(--ease)}.option-group-body{display:grid;gap:var(--s4);padding:var(--s4)}.option-field{display:grid;gap:var(--s2);min-width:0}.option-label{font-size:var(--t-sm);font-weight:700}.option-names{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s2)}.lang-input{position:relative;display:block;min-width:0}.lang-input .lang-tag{position:absolute;left:8px;top:50%;transform:translateY(-50%);padding:1px 6px;border-radius:6px;background:var(--hover);color:var(--muted);font-size:11px;font-weight:700;pointer-events:none}.lang-input .input{width:100%;padding-left:52px}.option-rules{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3) var(--s4)}.option-rules .segmented{flex:1 1 280px;max-width:360px}.option-required,.option-counts label{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);font-weight:600}.option-counts{display:flex;flex-wrap:wrap;gap:var(--s3)}.option-counts .input{width:76px}.option-choices{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.option-choice{display:grid;gap:var(--s2)}.option-choice-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--s2);align-items:center;padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg)}.option-choice.is-soldout .option-choice-row{border-style:dashed}.option-choice.is-soldout .option-choice-names{opacity:.6}.option-mark{color:var(--muted)}.option-choice-row>.option-delete{align-self:center}.option-choice-names{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s2)}.option-choice-more{grid-column:2 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3)}.price-input{display:inline-flex;align-items:center;gap:6px;flex:0 1 140px;min-width:112px;color:var(--muted);font-weight:700}.price-input .input{flex:1;min-width:0}.option-choice-tools{flex:1 1 auto;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;gap:var(--s2)}.option-sale{display:inline-flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);font-weight:600}.option-choice.is-soldout .option-sale-text{color:var(--danger)}.option-delete:not(:disabled):hover{color:var(--danger);background:var(--danger-soft)}.option-add{display:flex;align-items:center;justify-content:center;gap:var(--s2);width:100%;min-height:44px;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:transparent;color:var(--primary);font-weight:700;cursor:pointer}.option-add:not(:disabled):hover{border-color:var(--primary);background:var(--primary-soft)}.option-add:disabled{opacity:.5;cursor:not-allowed}.option-inside{justify-self:start}.option-branch{display:grid;gap:var(--s3);margin-left:9px;padding-left:var(--s4);border-left:2px solid var(--primary-soft)}.option-caption{display:flex;align-items:center;gap:6px;padding:var(--s2) var(--s3) 0;color:var(--primary);font-size:var(--t-xs);font-weight:700}.option-group.is-nested .option-group-bar{background:transparent}@media(max-width:480px){.option-names,.option-choice-names{grid-template-columns:minmax(0,1fr)}.option-group-body{padding:var(--s3)}.option-branch{padding-left:var(--s3)}}.option-summary{display:flex;flex-wrap:wrap;gap:var(--s1);margin-top:2px}.option-chip{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-xs)}.add-btn{position:relative}.add-btn-count{position:absolute;top:-6px;right:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:var(--r-pill);background:var(--attention);color:var(--on-attention);font-size:var(--t-xs);font-weight:800;display:grid;place-items:center;box-shadow:0 0 0 2px var(--panel)}.stage-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:var(--r-pill);border:1px solid transparent;font-size:var(--t-sm);font-weight:700;line-height:1.4;white-space:normal}.stage-badge svg{flex:none}.stage-notSent{border:1px dashed var(--attention);color:var(--attention-ink);background:var(--panel)}.stage-waiting{background:var(--attention-soft);color:var(--attention-ink);border-color:var(--attention)}.stage-sent{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.stage-cooking{background:var(--attention);color:var(--on-attention)}.stage-ready{background:var(--primary);color:var(--on-primary)}.stage-served{background:var(--hover);color:var(--text-2);border-color:var(--line-strong)}.stage-cancelled{background:var(--danger-soft);color:var(--danger);border-color:var(--danger)}@media(prefers-reduced-motion:no-preference){.stage-ready{animation:stage-pulse 1.6s var(--ease) 3}@keyframes stage-pulse{50%{box-shadow:0 0 0 6px var(--primary-soft)}}}.cart-sheet .dialog-foot{display:block}.cart-where{gap:var(--s2)}.cart-count,.cart-section-count{display:inline-grid;place-items:center;min-width:32px;padding:2px 12px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary);font-weight:800}.cart-section-count{background:var(--hover);color:var(--text-2)}.cart-section-title{margin:0;font-family:var(--font-display);font-size:var(--t-lg)}.cart-shared{align-items:flex-start;margin:0;font-size:var(--t-sm)}.cart-shared svg{flex:none;margin-top:2px}.cart-line{display:grid;grid-template-columns:72px minmax(0,1fr);gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--shadow-card)}.cart-line-img{width:72px;height:72px;border-radius:var(--r-md);object-fit:cover;background:var(--hover);border:1px solid var(--line)}.cart-line.soldout .cart-line-img{opacity:.5;filter:grayscale(1)}.cart-line-main{display:grid;gap:var(--s2);min-width:0}.cart-line-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s2)}.cart-line-name{line-height:1.45;overflow-wrap:anywhere}.cart-line-price{display:grid;justify-items:end;flex:none;color:var(--primary);font-weight:800;font-size:var(--t-lg)}.cart-line-price small{font-size:var(--t-xs);font-weight:400}.cart-line-tags{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.who-tag,.qty-tag{padding:2px 10px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-xs);font-weight:600}.who-tag.other{background:var(--attention-soft);color:var(--attention-ink)}.cart-line-note{margin:0;padding:var(--s1) var(--s3);border-radius:var(--r-sm);background:var(--primary-soft);color:var(--text-2);font-size:var(--t-sm);overflow-wrap:anywhere}.cart-line-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2)}.cart-line-btn{width:44px;height:44px;border-radius:var(--r-md)}.cart-line-btn[aria-pressed=true]{border-color:var(--primary);color:var(--primary)}.cart-line-btn.danger{color:var(--danger)}.cart-line.is-sent{box-shadow:none}.cart-foot{gap:var(--s3)}.cart-sum{padding:var(--s2) var(--s4)}.cart-sum .sum-row.total{margin-top:0}.cart-sum .sum-row:first-child.total{border-top:0;padding-top:var(--s1)}.cart-foot-hint{margin:0;text-align:center;font-size:var(--t-sm)}@media(max-width:420px){.cart-line{grid-template-columns:56px minmax(0,1fr);padding:var(--s2)}.cart-line-img{width:56px;height:56px}}.track-line{display:flex;align-items:center;gap:var(--s2)}.track-line-img{width:44px;height:44px;flex:none;border-radius:var(--r-sm);object-fit:cover;background:var(--hover)}.track-line .is-cancelled{text-decoration:line-through;color:var(--muted)}.line-photo{width:48px;height:48px;flex:none;border-radius:var(--r-sm);object-fit:cover;background:var(--hover);border:1px solid var(--line)}.line-photo.media-fallback{display:grid;place-items:center;color:var(--muted)}.line-photo.media-fallback svg{width:20px;height:20px}.line-photo-sm{width:36px;height:36px}.line-photo-sm.media-fallback svg{width:16px;height:16px}.line-photo-lg{width:64px;height:64px}@media(max-width:420px){.summary-line{grid-template-columns:40px 32px 1fr auto;gap:var(--s2)}.summary-line .line-photo{width:40px;height:40px}}.dish-cell{display:inline-flex;align-items:center;gap:var(--s2);min-width:0}.settings-page{display:grid;gap:var(--s4);max-width:960px}.settings-card{display:grid;gap:var(--s4);padding:var(--s5)}.settings-card h3{font-size:var(--t-md)}.settings-card-head{display:flex;align-items:flex-start;gap:var(--s3)}.settings-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex:none;background:var(--primary-soft);color:var(--primary)}.settings-foot{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.toggle-group{display:grid;border-radius:var(--r-md);background:color-mix(in srgb,var(--primary-soft) 70%,var(--panel));border:1px solid color-mix(in srgb,var(--primary) 14%,var(--line))}.toggle-row{display:flex;align-items:center;gap:var(--s4);padding:var(--s3) var(--s4)}.toggle-row+.toggle-row{border-top:1px solid color-mix(in srgb,var(--primary) 12%,var(--line))}.toggle-row strong{display:block;font-size:var(--t-sm)}.toggle-row small{display:block;font-size:var(--t-xs);line-height:1.45}.cur-flag{width:28px;height:20px;border-radius:4px;object-fit:cover;flex:none;box-shadow:0 0 0 1px #00000014;background:var(--hover)}.cur-flag-none{display:inline-grid;place-items:center;font-size:10px;font-weight:800;color:var(--muted)}.cur-home{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s3) var(--s4);padding:var(--s4) var(--s5)}.cur-home .cur-flag{width:42px;height:30px;border-radius:6px}.cur-home-label{display:block;font-size:var(--t-xs);font-weight:600;color:var(--muted)}.cur-home-input{width:6ch;padding:0;border:0;border-bottom:2px dashed transparent;background:none;font-family:var(--font-display);font-size:var(--t-xl);font-weight:800;letter-spacing:.04em;color:var(--text)}.cur-home-input:hover{border-bottom-color:var(--line-strong)}.cur-home-input:focus{outline:none;border-bottom-color:var(--primary)}.cur-home-input[aria-invalid=true]{border-bottom-color:var(--danger)}.cur-home-hint{flex:1 1 220px;text-align:right}.cur-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);gap:var(--s4);align-items:start}.cur-row{display:grid;grid-template-columns:minmax(130px,auto) auto minmax(0,1fr) auto;align-items:center;gap:var(--s3)}.cur-from,.cur-to{display:flex;align-items:center;gap:var(--s2);min-height:48px;padding:0 var(--s3);border-radius:var(--r-md);background:var(--hover);border:1px solid var(--line)}.cur-from{font-family:var(--font-display);font-size:var(--t-lg);font-weight:800}.cur-code-input{width:4ch;padding:0;border:0;background:none;font:inherit;color:inherit;text-transform:uppercase}.cur-code-input:focus{outline:none;text-decoration:underline 2px var(--primary);text-underline-offset:4px}.cur-to .input{min-height:46px;border:0;background:transparent;padding-inline:0;box-shadow:none;font-size:var(--t-md)}.cur-to:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.cur-unit{font-size:var(--t-sm);font-weight:600}.cur-eq{font-size:var(--t-lg);font-weight:800;color:var(--text-2)}.cur-add{display:flex;align-items:center;gap:var(--s2);min-height:48px;padding:0 var(--s4);border:1px dashed var(--line-strong);border-radius:var(--r-md);background:none;color:var(--text-2);font:inherit;font-weight:600;cursor:pointer;text-align:left;transition:background .15s var(--ease),border-color .15s var(--ease)}.cur-add:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.cur-add:disabled{opacity:.5;cursor:not-allowed}.cur-side{gap:var(--s3)}.fx-card{display:grid;gap:var(--s2);padding-top:var(--s3);border-top:1px solid var(--line)}.fx-pair{display:flex;align-items:center;justify-content:space-between;gap:var(--s2)}.fx-code{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-display);font-weight:800;font-size:var(--t-lg)}.fx-value{padding:var(--s2) var(--s3);border-radius:var(--r-md);background:var(--hover);text-align:center;font-size:var(--t-sm);font-weight:700}.cur-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px;max-height:min(60dvh,520px);overflow-y:auto}.cur-option{display:flex;align-items:center;gap:var(--s3);width:100%;min-height:48px;padding:0 var(--s3);border:0;border-radius:var(--r-md);background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.cur-option:hover{background:var(--hover)}.cur-option .muted{font-size:var(--t-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.cur-layout{grid-template-columns:minmax(0,1fr)}}@media(max-width:560px){.cur-row{grid-template-columns:minmax(0,1fr) auto}.cur-eq{display:none}.cur-to{grid-column:1}.cur-row>.icon-btn{grid-row:1 / span 2;grid-column:2}.settings-card{padding:var(--s4)}.cur-home-hint{text-align:left}}.login-art{background-color:var(--primary-deep);background-image:radial-gradient(120% 80% at 0% 100%,rgb(0 0 0 / .22),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300' fill='none' stroke='white' stroke-opacity='.16' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M24 66h76a38 38 0 0 1-76 0z'/%3E%3Cpath d='M38 66c4-10 10-10 14 0s10 10 14 0 10-10 14 0'/%3E%3Cpath d='M70 20l28 44M82 18l22 46'/%3E%3Cpath d='M44 40c0-6 6-6 6-12M58 40c0-6 6-6 6-12'/%3E%3Cpath d='M190 30c26 2 44 18 52 44-26-6-44-22-52-44z'/%3E%3Cpath d='M190 30c-4-6-2-12 4-14'/%3E%3Cpath d='M30 210c18-22 46-22 64 0-18 22-46 22-64 0z'/%3E%3Cpath d='M94 210l16-12v24z'/%3E%3Ccircle cx='48' cy='206' r='2'/%3E%3Cpath d='M150 140c10-18 40-16 46 2 14 6 10 30-8 30-8 14-34 12-40-4-16-4-14-24 2-28z'/%3E%3Ccircle cx='170' cy='154' r='10'/%3E%3Cpath d='M232 196c22-24 52-20 56-4-10 22-40 30-56 4z'/%3E%3Cpath d='M232 196c18-4 34-6 50-8'/%3E%3Cpath d='M150 238h44v26a12 12 0 0 1-12 12h-20a12 12 0 0 1-12-12z'/%3E%3Cpath d='M194 246h6a8 8 0 0 1 0 16h-6'/%3E%3Cpath d='M164 226c0-6 6-6 6-12M178 226c0-6 6-6 6-12'/%3E%3Ccircle cx='262' cy='114' r='14'/%3E%3Cpath d='M262 100v28M248 114h28'/%3E%3C/svg%3E");background-size:auto,300px 300px}.login-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,rgb(0 0 0 / .18))}.login-art>*{position:relative;z-index:1}.cust-top{padding:var(--s3) var(--s4) 0}.cat-closing{display:inline-flex;align-items:center;gap:var(--s1);flex-basis:100%;width:fit-content;max-width:fit-content;margin-top:var(--s1);padding:2px var(--s2);border-radius:var(--r-pill);background:var(--attention-soft);color:var(--attention-ink);font-size:var(--t-xs);font-weight:700;line-height:1.4}.cat-closing svg{flex:none}.vendor-section>.cat-closing{margin-bottom:var(--s2)}.cust-bar{display:flex;align-items:center;gap:var(--s3);padding:var(--s2);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.cust-brand-logo{width:44px;height:44px;flex:none;border-radius:12px;object-fit:cover;background:var(--primary-soft);color:var(--primary)}.cust-brand{flex:1;min-width:0;display:grid;gap:2px;justify-items:start}.cust-brand strong{max-width:100%;font-family:var(--font-display);font-size:var(--t-md);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cust-where{display:inline-flex;max-width:100%;padding:2px 10px;border-radius:var(--r-pill);background:var(--primary-soft);color:var(--primary);font-size:var(--t-xs);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cust-where .table-glyph{gap:4px}.cust-tools{display:inline-flex;align-items:stretch;flex:none;height:40px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--panel);overflow:hidden}.cust-tools>.btn{min-height:0;height:100%;min-width:40px;padding:0 10px;border:0;border-radius:0;background:transparent}.cust-tools>.btn+.btn{border-left:1px solid var(--line-strong)}.cust-tools>.btn:hover:not(:disabled){background:var(--hover)}.cust-page-head{padding:var(--s5) var(--s1) 0}.cust-page-head h1{font-size:var(--t-2xl)}.cust-page-head p{margin-top:var(--s1);color:var(--muted);font-size:var(--t-sm)}@media(max-width:400px){.cust-tools .lang-short{display:none}}.cust-chips .chips button{display:inline-flex;align-items:center;gap:var(--s2);padding:0 6px 0 var(--s4);border-color:var(--line);background:var(--panel);color:var(--text)}.cust-chips .chips button b{min-width:24px;height:24px;padding:0 7px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-xs);font-weight:700;display:inline-grid;place-items:center}.cust-chips .chips button[aria-pressed=true]{background:var(--text);color:var(--panel);border-color:var(--text)}.cust-chips .chips button[aria-pressed=true] b{background:color-mix(in srgb,var(--panel) 18%,transparent);color:var(--panel)}.cust-icon{width:32px;height:32px;flex:none;border-radius:10px;display:grid;place-items:center}.cust-icon.tone-attention{background:var(--attention-soft);color:var(--attention-ink)}.reco-title svg{color:inherit}.vendor-title{align-items:center;flex-wrap:wrap;column-gap:var(--s3);row-gap:0}.vendor-title .cust-logo{width:40px;height:40px;border-radius:12px}.vendor-count,.cat-count{font-family:var(--font-body);font-size:var(--t-xs);font-weight:600;color:var(--muted)}.cat-count{padding:1px 8px;border-radius:var(--r-pill);background:var(--hover)}.dish-card:hover{border-color:var(--line-strong)}.dish-card.in-cart{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.dish-card.in-cart .dish-card-body{background:color-mix(in srgb,var(--primary-soft) 55%,var(--panel))}.cust .bottom-tabs .tab-icon{width:56px;height:30px;border-radius:var(--r-pill);transition:background .15s var(--ease)}.cust .bottom-tabs button[aria-selected=true] .tab-icon{background:var(--primary-soft)}.cust-card-body{padding:var(--s4)}.cust-total{padding:var(--s4);display:grid;gap:var(--s2)}.cust-total .sum-row.total{border-top:0;margin-top:0;padding-top:0}.req-section-title{font-size:var(--t-lg)}.split-lines{list-style:none;margin:0;padding:0;display:grid}.split-line{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:var(--s2);min-height:48px;border-bottom:1px solid var(--line)}.split-line:last-child{border-bottom:0}.split-line-name{min-width:0;overflow-wrap:anywhere}.split-line-amount{white-space:nowrap;font-weight:600}.split-line-move{color:var(--primary);min-height:40px}.split-sums{margin-top:var(--s2)}.split-actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}.split-actions .btn{flex:1 1 160px}.split-group.is-locked{border-color:color-mix(in srgb,var(--primary) 40%,var(--line))}.split-group-name,.split-target-name{min-width:0;overflow-wrap:anywhere;text-align:left}.split-lock-note,.split-rest-note{font-size:var(--t-sm);margin-top:var(--s2)}.split-targets{display:grid;gap:var(--s2)}.split-pay-group{font-size:var(--t-xs)}@media(max-width:420px){.cust .segmented.three button,.bill-view-toggle.three button{flex-direction:column;gap:2px;font-size:var(--t-xs);min-height:52px;padding:4px;text-align:center}}.perf-period{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s2)}.perf-seg{display:flex;flex-wrap:wrap}.perf-seg button{padding:0 var(--s4)}.perf-seg button[aria-pressed=true]{background:var(--primary);color:var(--on-primary);box-shadow:none}.perf-dates{justify-content:flex-end}.perf-date{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-sm);color:var(--text-2)}.perf-count{margin-left:var(--s1);padding:0 6px;border-radius:var(--r-pill);background:var(--hover);color:var(--muted);font-size:var(--t-xs);font-weight:700}.perf-tile{display:grid;gap:var(--s1);align-content:start}.perf-tile-sub{font-size:13px;color:var(--text-2)}.perf-delta{font-size:13px;font-weight:600;color:var(--muted)}.perf-delta.is-better{color:var(--good)}.perf-delta.is-worse{color:var(--danger)}.perf-bad{color:var(--danger);font-weight:700}.perf-h2{font-size:var(--t-md);font-weight:800}.perf-pill{font-size:var(--t-xs);font-weight:600;color:var(--text-2);background:var(--hover);border-radius:var(--r-pill);padding:4px 10px}.perf-note{font-size:13px;color:var(--muted);max-width:80ch}.perf-look{background:var(--attention-soft);border-radius:var(--r-lg);padding:var(--s4) var(--s5);display:grid;gap:var(--s3)}.perf-look h2{font-size:var(--t-md);font-weight:800;color:var(--text)}.perf-look ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--s2);font-size:var(--t-sm);color:var(--text)}.perf-look li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s2)}.perf-look a{color:var(--attention-ink);font-weight:700}.perf-table td.perf-rank{font-family:var(--font-display);font-weight:800;font-size:var(--t-lg)}.perf-name{font-weight:700;color:var(--text);text-decoration:none}a.perf-name:hover{color:var(--primary);text-decoration:underline}.perf-table tr.perf-flagged td{background:color-mix(in srgb,var(--attention-soft) 55%,transparent)}.perf-table tr.perf-group-start td{border-top:2px solid var(--line-strong)}.perf-flags{display:flex;flex-wrap:wrap;gap:var(--s1)}.perf-flag{display:inline-block;font-size:var(--t-xs);font-weight:700;border-radius:var(--r-pill);padding:3px 10px;white-space:nowrap}.perf-flag.is-danger{background:var(--danger-soft);color:var(--danger)}.perf-flag.is-attention{background:var(--attention-soft);color:var(--attention-ink)}.perf-back{margin-bottom:var(--s3)}.perf-person{gap:var(--s4);align-items:center}.perf-person h1{margin:0}.perf-person-head{margin-bottom:0}.perf-avatar{flex:none;width:48px;height:48px;border-radius:var(--r-pill);object-fit:cover;display:inline-flex;align-items:center;justify-content:center;background:var(--hover);border:1px solid var(--line);color:var(--text-2);font-family:var(--font-display);font-weight:800}.perf-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:var(--s4)}.perf-chart{margin:0;display:grid;gap:var(--s2)}.perf-bars{display:flex;align-items:flex-end;gap:6px;height:160px;border-bottom:1px solid var(--line-strong)}.perf-bar{flex:1;min-width:6px;border-radius:4px 4px 0 0;background:color-mix(in srgb,var(--primary) 40%,var(--track))}.perf-bar.is-high{background:var(--primary)}.perf-ticks{display:flex;gap:6px;font-size:var(--t-xs);color:var(--muted)}.perf-ticks span{flex:1;min-width:6px;white-space:nowrap;overflow:visible}.perf-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--s2);font-size:var(--t-sm)}.perf-list li{display:flex;justify-content:space-between;gap:var(--s3)}.perf-viewas{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);padding:var(--s3) var(--s4);margin-bottom:var(--s4);border-radius:var(--r-md);background:var(--info-soft);color:var(--text);font-size:var(--t-sm)}.perf-viewas a{display:inline-flex;align-items:center;gap:4px;margin-left:auto;font-weight:700;color:var(--info)}@media(max-width:600px){.perf-period{align-items:stretch;width:100%}.perf-seg button{flex:1;padding:0 var(--s2)}.perf-dates{justify-content:flex-start}}.clinic-art{background-image:radial-gradient(120% 80% at 0% 100%,rgb(0 0 0 / .22),transparent 60%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='280' height='280' fill='none' stroke='white' stroke-opacity='.15' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M40 30h16v16h16v16H56v16H40V62H24V46h16z'/%3E%3Crect x='150' y='40' width='70' height='26' rx='13' transform='rotate(-30 185 53)'/%3E%3Cpath d='M172 66l26-15' transform='rotate(-30 185 53)'/%3E%3Cpath d='M20 170h40l12-24 18 50 14-34 10 8h40'/%3E%3Ccircle cx='220' cy='200' r='14'/%3E%3Cpath d='M220 186v-30c0-16-26-16-26 0v20M220 156c0-16 26-16 26 0v20'/%3E%3Cpath d='M120 250h10v10h10v10h-10v10h-10v-10h-10v-10h10z'/%3E%3C/svg%3E");background-size:auto,280px 280px}.clinic-hero-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#ffffff24;color:#fff}.clinic-hero-note{display:flex;align-items:center;gap:var(--s2);font-size:var(--t-sm)!important}.clinic-logo{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--primary);color:var(--on-primary);flex-shrink:0}.topbar-brand .clinic-logo{width:32px;height:32px}.account-wrap{position:relative}.avatar-initial{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:700}.account-name{max-width:18ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-pop{padding:var(--s2)}.account-head{flex-direction:column;align-items:flex-start;gap:2px;padding:var(--s2) var(--s3) var(--s3);border-bottom:1px solid var(--line);margin-bottom:var(--s1)}.menu-item.is-danger{color:var(--danger)}@media(max-width:720px){.account-name{display:none}}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--r-pill);background:var(--hover);color:var(--text-2);font-size:var(--t-xs);font-weight:600;line-height:1.6;white-space:nowrap}.tag-danger{background:var(--danger-soft);color:var(--danger)}.tag-good{background:var(--good-soft);color:var(--good)}.tag-info{background:var(--info-soft);color:var(--info)}.tag-attention{background:var(--attention-soft);color:var(--attention-ink)}.good{color:var(--good)}.check{gap:var(--s2);cursor:pointer;-webkit-user-select:none;user-select:none}.input-sm{min-height:34px;padding-block:4px;font-size:var(--t-sm);width:auto}.stack-lg>.page-head{margin-bottom:0}.page-head-main{display:grid;justify-items:start;min-width:0}.page-title-row{display:flex;align-items:center;gap:var(--s4);min-width:0}.page-title-text{min-width:0}.page-title-text h1{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3);overflow-wrap:anywhere}.page-sub{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2);margin-top:var(--s1);color:var(--muted)}.page-actions{align-items:center}.panel-head h2{font-size:var(--t-lg)}.panel-head small{display:block}.back-btn{display:inline-flex;align-items:center;gap:6px;width:fit-content;min-height:40px;margin-bottom:var(--s3);padding:0 var(--s4) 0 var(--s3);border:1px solid var(--line-strong);border-radius:10px;background:var(--panel);color:var(--text);font:inherit;font-size:var(--t-sm);font-weight:600;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease)}.back-btn svg{flex:none;color:var(--muted);transition:transform .15s var(--ease),color .15s var(--ease)}.back-btn:hover{background:var(--hover);color:var(--primary)}.back-btn:hover svg{color:var(--primary);transform:translate(-2px)}.back-btn:active{transform:translateY(1px)}.back-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media(prefers-reduced-motion:reduce){.back-btn,.back-btn svg{transition:none}}.person-initial{display:inline-grid;place-items:center;flex:none;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-family:var(--font-display);font-weight:800}.person-initial-md{width:40px;height:40px;font-size:var(--t-md)}.person-initial-lg{width:64px;height:64px;font-size:var(--t-xl)}.patient-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s1) var(--s2)}.patient-meta>span+span:before{content:"·";margin-right:var(--s2);color:var(--line-strong)}.queue-no-lg{min-width:56px;height:56px;border-radius:14px;font-size:var(--t-2xl)}.visit-sub{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--s2);flex-basis:100%}.page-sub-name{color:var(--text)}@media(max-width:560px){.person-initial-lg,.queue-no-lg{width:48px;min-width:48px;height:48px;font-size:var(--t-lg)}}.range-picker{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2) var(--s3)}.range-picker .segmented{min-width:240px}.range-dates{display:flex;align-items:center;gap:var(--s2)}.range-dates .input{width:auto;min-width:0}@media(max-width:560px){.range-picker,.range-picker .segmented,.range-dates{width:100%}.range-dates .input{flex:1}}.plain-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s2)}.patient-line{overflow-wrap:anywhere}h1 .patient-line .muted{font-size:var(--t-md);font-weight:500;font-family:var(--font-body)}.allergy,.alert-warn{display:flex;align-items:center;gap:var(--s2)}.pick-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s1);max-height:320px;overflow:auto}.pick-list .list-btn{display:grid;gap:2px;width:100%;text-align:left;padding:var(--s2) var(--s3);border-radius:var(--r-sm)}.locked{display:grid;justify-items:center;gap:var(--s3);text-align:center;color:var(--muted)}.locked h3{color:var(--text)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:var(--s4);margin:0}.detail-grid dt{color:var(--muted);font-size:var(--t-sm)}.detail-grid dd{margin:0;overflow-wrap:anywhere}.stat-warn{border-color:var(--attention);box-shadow:var(--glow-attention)}.queue-board{display:grid;grid-template-columns:repeat(5,minmax(240px,1fr));gap:var(--s4);overflow-x:auto;padding-bottom:var(--s2);align-items:start}.queue-col{gap:var(--s3);min-width:0}.queue-col .kitchen-col-head{font-size:var(--t-md)}.picked-patient{display:flex;align-items:center;gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--hover)}.picked-patient .grow{display:grid;gap:2px;min-width:0}.queue-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3);display:grid;gap:var(--s2);box-shadow:var(--shadow-card)}.queue-card.is-urgent{border-color:var(--danger);box-shadow:0 0 0 2px var(--danger-soft)}.queue-card.is-mine{border-left:4px solid var(--primary)}.queue-no{display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 8px;border-radius:10px;background:var(--primary-soft);color:var(--primary);font-family:var(--font-display);font-weight:800;font-size:var(--t-lg)}.queue-patient{color:inherit;text-decoration:none}.queue-patient:hover strong{color:var(--primary)}.queue-tags{gap:var(--s1)}.queue-card footer{gap:var(--s1)}@media(max-width:900px){.queue-board{grid-template-columns:1fr;overflow:visible}}.visit-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--s4);align-items:start}@media(max-width:1000px){.visit-layout{grid-template-columns:1fr}}.vitals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--s3)}.vitals-read{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--s3);margin:0}.vitals-read>div{padding:var(--s2) var(--s3);border-radius:var(--r-sm);background:var(--hover)}.vitals-read dt{font-size:var(--t-xs);color:var(--muted)}.vitals-read dd{margin:0;font-family:var(--font-display);font-size:var(--t-xl);font-weight:700}.vitals-read dd small{font-size:var(--t-xs);font-family:var(--font-body);color:var(--muted);font-weight:500}.vitals-read .is-abnormal{background:var(--danger-soft)}.vitals-read .is-abnormal dd{color:var(--danger)}.amend-wrap{display:grid;grid-template-columns:1fr auto;gap:var(--s2);align-items:start}textarea.input{min-height:auto;resize:vertical;font:inherit;line-height:1.5}textarea.input[readonly],input.input[readonly]{background:var(--hover)}.amendments summary{cursor:pointer;color:var(--primary);font-weight:600}.amendments ul{margin:var(--s2) 0 0;padding-left:var(--s4);display:grid;gap:var(--s2)}.amend-diff del{color:var(--danger)}.amend-diff ins{color:var(--good);text-decoration:none}.rx-line{display:grid;grid-template-columns:minmax(200px,2fr) 1fr 1fr 80px 100px auto;gap:var(--s2);padding:var(--s2);border:1px solid var(--line);border-radius:var(--r-sm)}.rx-line .rx-instr{grid-column:1 / -1}@media(max-width:760px){.rx-line{grid-template-columns:1fr 1fr}.rx-line>select{grid-column:1 / -1}}.rx-card{border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--s3);display:grid;gap:var(--s2)}.rx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(460px,100%),1fr));gap:var(--s4);align-items:start}.rx-ticket h3{gap:var(--s2)}.bill-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:var(--s4);align-items:start}@media(max-width:900px){.bill-grid{grid-template-columns:1fr}}.summary-lines{display:grid;gap:var(--s1);border-top:1px solid var(--line)}.print-only{display:none}@media print{.print-only{display:block}.receipt.printable{place-items:start;width:72mm;font-size:12px;color:#000}.receipt-row{display:flex;justify-content:space-between;gap:8px}}.monitor-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:var(--s4);align-items:start}@media(max-width:1000px){.monitor-grid{grid-template-columns:1fr}}.hourly-chart{margin:0}.hourly-chart svg{width:100%;height:auto;display:block}.hourly-chart .grid{stroke:var(--line);stroke-width:1}.hourly-chart .axis{fill:var(--muted);font-size:11px;font-family:var(--font-body)}.hourly-chart .bar-changes{fill:var(--primary)}.hourly-chart .bar-reads{fill:var(--attention)}.hourly-chart figcaption{gap:var(--s2);font-size:var(--t-sm);color:var(--muted);margin-top:var(--s2)}.legend{display:inline-block;width:10px;height:10px;border-radius:2px}.legend-changes{background:var(--primary)}.legend-reads{background:var(--attention);margin-left:var(--s3)}.alert-list{list-style:none;margin:0;padding:0}.alert-item{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-top:1px solid var(--line);border-left:4px solid transparent}.alert-item.level-high{border-left-color:var(--danger)}.alert-item.level-high>svg{color:var(--danger)}.alert-item.level-medium{border-left-color:var(--attention)}.alert-item.level-medium>svg{color:var(--attention-ink)}.alert-item.level-low>svg{color:var(--info)}.feed{list-style:none;margin:0;padding:0 var(--s4) var(--s3);display:grid}.feed li{display:grid;grid-template-columns:56px 1fr;gap:var(--s2);padding:6px 0;border-bottom:1px dashed var(--line)}.monitor-table td{vertical-align:top}tr.is-breakglass td{background:var(--danger-soft)}.bar-list{list-style:none;margin:0;display:grid;gap:var(--s2)}.bar-list li{display:grid;grid-template-columns:minmax(120px,1.2fr) 2fr 40px;gap:var(--s3);align-items:center}.bar-track{height:10px;border-radius:var(--r-pill);background:var(--track);overflow:hidden}.bar-fill{display:block;height:100%;background:var(--primary);border-radius:inherit}.role-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--s3)}.role-card{display:grid;gap:var(--s1);text-align:left;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--panel);color:var(--text);font:inherit;cursor:pointer}.role-card:hover:not(:disabled){border-color:var(--primary)}.role-card:disabled{cursor:default;opacity:.85}.role-options{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--s3);display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s2)}.perm-row{display:flex;align-items:center;gap:var(--s2)}.perm-row small{display:block}.plain-list.panel-pad,.summary-lines.panel-pad{padding:var(--s3) var(--s4)}.settings-foot{z-index:2}.access-more{display:flex;justify-content:center;padding:var(--s3);border-top:1px solid var(--line)}.eod-steps li.is-next .setup-mark{border-color:var(--attention);color:var(--attention-ink)}.eod-steps li.is-soft{color:var(--muted)}.eod-steps li.is-soft .setup-mark{border-style:dashed}.eod-actions{display:flex;justify-content:flex-end;border-top:1px solid var(--line)}.eod-expected{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--hover)}.eod-expected b{font-size:1.25rem}.cash-diff{display:inline-flex;align-items:center;gap:var(--s1);font-weight:600}.cash-diff.is-ok{color:var(--good)}.cash-diff.is-over{color:var(--attention-ink)}.cash-diff.is-short{color:var(--danger)}.link-btn{padding:0;border:0;background:none;color:var(--primary);font:inherit;font-weight:600;cursor:pointer;min-height:44px}.link-btn:hover{text-decoration:underline}.link-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--r-sm)}table.data tr.is-selected td{background:var(--hover)}@media(max-width:640px){.eod-actions .btn{width:100%}.settings-foot .row,.settings-foot .row .btn{flex:1}}.line-list{list-style:none;margin:0;padding:0;display:grid}.line-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:var(--s2) var(--s3);min-height:56px;padding:var(--s2) 0;border-bottom:1px solid var(--line)}.line-item:last-child{border-bottom:0}.line-name{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.line-amount{font-weight:600;text-align:right;min-width:7ch}.line-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--s1);min-width:44px}.line-actions .icon-btn{min-width:44px;min-height:44px}.danger-ink{color:var(--danger)}.add-line .input{min-width:0}.rx-card.is-cancelled{opacity:.65}.rx-card.is-cancelled .plain-list{text-decoration:line-through}.rx-note{margin:0;font-size:.875rem}.rx-actions{padding-top:var(--s2);border-top:1px solid var(--line);align-items:center}.push-end{margin-left:auto}.bill-mini{display:grid;gap:var(--s3);padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-sm)}.bill-mini-sums{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s2);margin:0}.bill-mini-sums dt{font-size:.75rem;color:var(--muted)}.bill-mini-sums dd{margin:0;font-weight:600}.bill-mini-sums .is-due dd{color:var(--attention-ink)}@media(max-width:560px){.line-item{grid-template-columns:minmax(0,1fr) auto}.line-item .stepper{grid-column:1;justify-self:start}.line-item .line-amount{grid-row:1;grid-column:2}.rx-actions .btn{flex:1}.push-end{margin-left:0}}.patient-cell{gap:var(--s3)}.patient-cell>span:last-child{display:grid;gap:2px}.patient-cell:hover strong{color:var(--primary)}.audit-toggle{min-height:48px;padding:0 var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--panel)}.audit-filter-grid .input{min-height:48px}@media(max-width:900px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.audit-filter-grid{grid-template-columns:1fr}}.dialog-foot .push-start{margin-right:auto}.push-start-self{align-self:flex-start}a.row-toggle{color:inherit;text-decoration:none}a.row-toggle:hover strong{color:var(--primary)}a.row-toggle svg{color:var(--muted)}.queue-no.queue-no-lg{min-width:56px;height:56px;border-radius:14px;font-size:var(--t-2xl)}.audit-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,2fr)}.audit-filter-grid .input,.audit-filter-grid input.input[type=date]{height:48px;min-height:48px}.cwho-owner{--who: #a855f7}.cwho-manager{--who: #10b981}.cwho-doctor{--who: #3b82f6}.cwho-nurse{--who: #ec4899}.cwho-pharmacist{--who: #14b8a6}.cwho-cashier{--who: #f59e0b}.cwho-reception{--who: #06b6d4}.cwho-staff,.cwho-system{--who: var(--muted)}.ctone-in{--tone: #3b82f6}.ctone-call{--tone: #6366f1}.ctone-move{--tone: #64748b}.ctone-vitals{--tone: #ec4899}.ctone-clinical{--tone: #8b5cf6}.ctone-sign{--tone: #0ea5e9}.ctone-service{--tone: #14b8a6}.ctone-rx{--tone: #06b6d4}.ctone-money{--tone: #22c55e}.ctone-ok{--tone: #16a34a}.ctone-warn{--tone: #f59e0b}.ctone-bad{--tone: #ef4444}.ctone-read{--tone: #94a3b8}[class*=ctone-] .audit-step-icon{background:color-mix(in oklab,var(--tone) 16%,var(--panel));border-color:color-mix(in oklab,var(--tone) 35%,transparent);color:color-mix(in oklab,var(--tone) 85%,var(--text))}.audit-step.ctone-bad .audit-step-title{color:var(--danger)}.audit-step.ctone-read .audit-step-title{color:var(--text-2);font-weight:500}.audit-step-times{color:var(--muted);font-weight:500}.trail-patient{color:var(--text-2);font-weight:600}.trail-reads{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s5);border-bottom:1px solid var(--line);color:var(--text-2);font-size:var(--t-sm)}.audit-side-actions .btn .chip{margin-left:auto}.step-label{display:inline-flex;align-items:center;gap:var(--s2);font-weight:600}.step-label .audit-step-icon{width:28px;height:28px}.case-cell{display:flex;align-items:center;gap:var(--s3);min-width:0}.case-badge{display:inline-grid;place-items:center;flex:none;min-width:44px;height:44px;padding:0 6px;border-radius:12px;font-family:var(--font-display);font-weight:800}.case-visit{background:var(--primary-soft);color:var(--primary)}.case-bill{background:color-mix(in oklab,#22c55e 16%,var(--panel));color:color-mix(in oklab,#22c55e 85%,var(--text))}.case-body{display:grid;gap:4px;min-width:0}.case-facts{gap:var(--s1) var(--s3);font-size:var(--t-sm)}@media(max-width:560px){.trail-reads{padding:var(--s3) var(--s4)}}
