:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#17212b;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}.auth{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top right,#c7edf3,#f7f4ec 55%)}.card{width:min(100%,410px);padding:36px;background:#fff;border-radius:20px;box-shadow:0 18px 50px #182a3030}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:800;color:#087f8c;margin:0 0 8px}h1,h2{margin:0}h1{font-size:28px}h2{font-size:17px}.muted{color:#667085;font-size:14px;line-height:1.5}.card form{display:grid;gap:10px;margin:24px 0 14px}input{width:100%;border:1px solid #d7dde3;border-radius:9px;padding:12px;font:inherit}button{border:0;border-radius:9px;padding:12px;font:inherit;font-weight:700;cursor:pointer;background:#087f8c;color:#fff}.link,.ghost{background:transparent;color:#087f8c;padding:4px}.error{color:#b42318;font-size:14px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.grid{display:grid;grid-template-columns:1.1fr 1.2fr .8fr;gap:18px}.panel{background:#fff;border-radius:16px;padding:18px;min-height:480px}.table-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.table{background:#eff8f6;color:#14533f;display:grid;gap:6px;min-height:78px}.table.busy{background:#fff3d8;color:#8a5700}.table small,.products small{font-weight:500}.products{display:grid;gap:8px;margin-top:18px}.products button{display:flex;justify-content:space-between;align-items:center;background:#f7f9fb;color:#17212b;text-align:left}.products span{display:grid;gap:3px}.products small{color:#667085}.receipt{display:flex;flex-direction:column}.empty{color:#667085;margin:auto;text-align:center;line-height:1.5}@media(max-width:900px){.grid{grid-template-columns:1fr}.panel{min-height:auto}.receipt{min-height:180px}}.panel-title{display:flex;justify-content:space-between;align-items:center}.table.selected{outline:3px solid #087f8c}.products button:disabled{opacity:.45;cursor:not-allowed}.line-items{display:grid;gap:10px;margin:20px 0}.line-items div,.summary div{display:flex;justify-content:space-between;gap:12px}.summary{margin-top:auto;border-top:1px solid #e6ebef;padding-top:14px;display:grid;gap:9px}.remaining{font-size:18px}.payments{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.card-pay{background:#244c73}.kitchen{min-height:100vh;background:#17212b;color:#fff;padding:24px}.kitchen header{max-width:1280px;margin:0 auto 28px}.kitchen h1{font-size:32px}.kitchen a{color:#9ee7de;text-decoration:none;font-weight:700}.kitchen .muted{color:#aebbc6}.tickets{max-width:1280px;margin:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.ticket{background:#fff;color:#17212b;border-radius:14px;padding:17px;border-top:8px solid #f4a261}.ticket-head,.ticket-head span{display:flex;justify-content:space-between;align-items:center}.ticket-head span{background:#fff3d8;color:#8a5700;border-radius:99px;padding:4px 8px;font-size:12px}.time{font-size:13px;color:#667085;margin:8px 0}.ticket ul{list-style:none;padding:10px 0 0;border-top:1px solid #e6ebef}.ticket li{padding:6px 0}.ticket li small{display:block;color:#667085;margin-left:23px}.ticket .note{background:#fff3d8;padding:8px;font-size:13px}.ticket button{width:100%;margin-top:12px}.no-tickets{grid-column:1/-1;border:1px dashed #607486;border-radius:14px;padding:50px;text-align:center;color:#aebbc6}.ticket li.new-item{background:#fff3d8;border-radius:6px;padding:6px}.ticket li.new-item em{color:#8a5700;font-size:12px;font-style:normal;font-weight:700}.k-stations{display:flex;gap:6px;background:#22303c;border-radius:12px;padding:4px}.k-stations button{background:transparent;color:#d0d9e1;min-height:48px;padding:8px 16px;font-size:16px}.k-stations button.active{background:#f4a261;color:#17212b}.ticket li.k-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #eef1f4}.ticket li.k-item:last-child{border-bottom:0}.ticket li.k-item.new-item{padding:8px 6px}.k-text{flex:1;min-width:0;font-size:17px;line-height:1.3}.ticket li .k-text small{margin-left:0}.ticket li small.k-station{display:inline-block;margin:2px 0 0 6px;vertical-align:middle;background:#eef2f6;color:#475569;border-radius:99px;padding:1px 8px;font-size:11px;font-weight:700}.ticket button.k-ready{width:auto;margin:0;min-width:96px;min-height:56px;font-size:18px;background:#067647;color:#fff;border-radius:12px}.ticket li.k-item.done .k-text{color:#667085;text-decoration:line-through;text-decoration-color:#98a2b3}.k-done{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.k-done span{color:#067647;font-weight:800;font-size:15px;white-space:nowrap}.kitchen button.k-undo{width:auto;margin:0;min-height:36px;padding:4px 12px;font-size:13px;background:#eef2f6;color:#344054}.ticket button.k-all{min-height:56px;font-size:18px;background:#17212b;color:#fff;border-radius:12px}.k-recent{max-width:1280px;margin:28px auto 0}.k-recent h2{font-size:18px;color:#9ee7de;margin:0 0 12px}.k-recent h2 small{color:#aebbc6;font-weight:500;font-size:13px;margin-left:6px}.k-recent>div{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.k-recent article{background:#22303c;border-radius:12px;padding:12px;border-left:6px solid #12b76a}.k-recent-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.k-recent-head span{color:#aebbc6;font-size:13px}.k-recent ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.k-recent li{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#d0d9e1;font-size:14px}.kitchen .kitchen-actions{flex-wrap:wrap}.admin{max-width:900px;margin:auto;padding:24px;background:#f4f6f8;min-height:100vh}.admin header{display:flex;gap:16px;align-items:center}.admin header a{color:#087f8c;text-decoration:none;font-weight:700}.admin nav{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.admin nav button{background:#e4ebef;color:#334155}.admin nav .active{background:#087f8c;color:#fff}.admin section{background:#fff;border-radius:14px;padding:20px}.admin form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:15px 0}.admin li{padding:10px 0;border-bottom:1px solid #eef1f3}.admin li button{margin-left:8px}.admin-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:16px}.admin-card{border:1px solid #e2e8f0;border-radius:10px;padding:14px;background:#fbfdfe}.admin-card h3{margin:0 0 5px}.admin-card h3 small,.admin-card p{color:#64748b;font-weight:400}.admin-card select{width:100%;padding:8px;border:1px solid #cbd5e1;border-radius:7px;background:#fff}.inline-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.inline-actions button,.inline-action{padding:6px 8px;font-size:12px;background:#e2e8f0;color:#334155}.inline-actions .danger{background:#fee2e2;color:#991b1b}.tag-list{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.tag-list span{display:flex;gap:4px;align-items:center;border-radius:999px;padding:4px 8px;background:#e6fffb;color:#115e59;font-size:12px}.tag-list button{padding:0;border:0;background:transparent;color:#0f766e;font-size:15px}.report-cards{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}.report-cards div{background:#eff8f6;padding:15px;border-radius:10px;display:grid;gap:7px}.report-cards strong{font-size:20px}@media(max-width:560px){.admin{padding:16px}.admin section{padding:15px}.admin-cards{grid-template-columns:1fr}}.product-photo{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;margin-bottom:8px;background:#eef1f3}.plain-list{list-style:none;padding:0;margin:12px 0 0}.plain-list li{padding:8px 0;border-bottom:1px solid #eef1f3}.app-content .admin-card h3 small{display:block;font-weight:400;color:var(--muted);font-size:.85rem}.app-content-photo{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0}.app-content-photo img{width:160px;height:96px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.app-content-text{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:8px 0;display:grid;gap:8px}.app-content-text legend{font-weight:600;padding:0 4px}.app-content-text textarea{font:inherit;width:100%}.header-actions{display:flex;align-items:center;gap:12px}.header-actions a{color:#087f8c;font-weight:700;text-decoration:none}.line-items>div{flex-wrap:wrap}.line-items>div>span{flex:1 1 0;min-width:0}.line-items>div>strong{white-space:nowrap}.line-items small.line-actions{display:flex;flex-wrap:wrap;gap:6px;flex-basis:100%;margin-top:-4px}.line-items small.line-actions button{min-width:36px;min-height:34px;padding:6px 10px;font-size:13px;white-space:nowrap;background:#e8eef0;color:#334155}.line-items small.line-actions button.danger{background:#fee2e2;color:#991b1b}.order-actions{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 16px}.order-actions button{font-size:12px;padding:7px 8px;background:#e6f0ef;color:#14533f}.order-actions .danger{background:#fee2e2;color:#991b1b}.shift-control button{font-size:12px;padding:8px 10px}.shift-control.open button{background:#dcfce7;color:#166534}.shift-control.closed button{background:#fef3c7;color:#92400e}.split-quantity{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:11px;color:#64748b}.split-quantity input{width:56px;padding:4px 5px;border:1px solid #cbd5e1;border-radius:6px}.split-panel{margin:10px 0 16px;padding:12px;background:#f0fdfa;border:1px solid #99f6e4;border-radius:10px}.split-panel h3{margin:0 0 5px;font-size:15px}.split-panel p{margin:0 0 10px;font-size:12px;color:#475569}.split-panel select{width:100%;padding:8px;border:1px solid #cbd5e1;border-radius:7px;background:#fff}.split-panel div{display:flex;gap:8px;margin-top:10px}.split-panel div button:first-child{background:#e2e8f0;color:#334155}.split-panel div button:last-child{background:#087f8c;color:#fff}.picker-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:grid;place-items:center;padding:16px;z-index:20}.picker{background:#fff;border-radius:16px;width:min(100%,520px);max-height:calc(100vh - 32px);overflow:auto;padding:18px;display:grid;gap:14px}.picker header{display:flex;justify-content:space-between;align-items:center;margin:0}.picker fieldset{border:0;padding:0;margin:0;display:grid;gap:8px}.picker legend{font-weight:800;margin-bottom:6px}.picker legend small{font-weight:500;color:#667085;margin-left:6px}.picker select{width:100%;padding:11px;border:1px solid #d7dde3;border-radius:9px;font:inherit;background:#fff}.picker-options{display:flex;flex-wrap:wrap;gap:8px}.picker-options button{background:#f1f5f9;color:#17212b;display:grid;gap:2px;min-width:96px;text-align:left}.picker-options button.active{background:#087f8c;color:#fff}.picker-options small{font-weight:500;opacity:.85}.picker footer{display:flex;gap:12px;align-items:center;justify-content:space-between;position:sticky;bottom:-18px;background:#fff;padding:10px 0 4px}.picker footer>button{flex:1}.picker footer>button:disabled{opacity:.45;cursor:not-allowed}.picker-quantity{display:flex;align-items:center;gap:10px}.picker-quantity button{width:40px;height:40px;padding:0;background:#e2e8f0;color:#17212b}.product-category{display:grid;gap:8px}.product-category h3{margin:10px 0 0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#667085}.item-options{display:block;font-style:normal;font-size:12px;color:#667085;margin-top:3px}.mini-link{font-size:12px;color:#087f8c;font-weight:700;text-decoration:none}.pay-box{display:grid;gap:8px;margin-top:14px}.pay-box label{display:grid;gap:4px;font-size:13px;font-weight:700;color:#334155}.pay-box input{padding:10px}.segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px}.segmented button{background:#eef2f6;color:#334155}.segmented button.active{background:#087f8c;color:#fff}.kitchen header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.kitchen-actions{display:flex;gap:10px;align-items:center}.kitchen .sound{background:#2c3a47;color:#fff;padding:8px 12px}.ticket li small.options{display:block;color:#0f766e;font-weight:700;margin-left:23px}.sold-out{max-width:1280px;margin:0 auto 18px;background:#22303c;border-radius:14px;padding:14px}.sold-out p{margin:0 0 10px;color:#aebbc6}.sold-out div{display:flex;flex-wrap:wrap;gap:8px}.sold-out button{background:#33485a;color:#fff;padding:8px 10px}.sold-out button.out{background:#b42318}.menu-admin h2{margin-top:22px}.menu-admin h2:first-of-type{margin-top:0}.admin .check{display:flex;align-items:center;gap:6px;font-size:14px;color:#334155}.admin .check input{width:auto}.admin select,.admin input{padding:10px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;background:#fff;width:100%}.admin label{display:grid;gap:4px;font-size:13px;color:#334155}.admin form.stacked{display:grid;grid-template-columns:1fr;gap:8px;margin:8px 0}.admin fieldset{border:1px solid #e2e8f0;border-radius:8px;padding:8px;display:grid;gap:4px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:22px}.section-head h2{margin:0!important}.inactive{opacity:.55}.inline-actions .warn{background:#fef3c7;color:#92400e}.tag-list span.inactive{background:#f1f5f9;color:#64748b}.option-list{list-style:none;padding:0;margin:8px 0}.option-list li{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:6px 0}.option-list small{color:#64748b}.table-wrap{overflow:auto}.admin table{width:100%;border-collapse:collapse;font-size:14px}.admin th,.admin td{padding:8px;text-align:left;border-bottom:1px solid #eef1f3;white-space:nowrap}.admin th{color:#64748b;font-weight:600}.reports{display:grid;gap:18px}.report-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:end}.report-filters button{background:#e2e8f0;color:#334155;padding:9px 12px}.report-filters label{width:auto}.report-cards small{color:#64748b;font-size:12px}.columns{margin:0;display:grid;gap:8px}.columns figcaption{font-weight:800}.columns-plot{display:flex;align-items:flex-end;gap:2px;height:160px;border-bottom:1px solid #cbd5e1;overflow-x:auto}.column{flex:1;min-width:26px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}.column .bar{width:min(100%,28px);background:#087f8c;border-radius:4px 4px 0 0}.column:hover .bar{background:#065e68}.column small{font-size:10px;color:#64748b;transform:translateY(18px);white-space:nowrap}.columns details{margin-top:14px;font-size:13px}.report-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.report-tables h3{margin:0 0 6px;font-size:15px}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:#12202b;color:#dbe4ea;display:flex;flex-direction:column;padding:18px 12px;gap:14px}.brand{display:flex;gap:10px;align-items:center;padding:0 8px 12px;border-bottom:1px solid #22323f}.brand>span{font-size:26px}.brand strong{display:block;color:#fff;font-size:17px}.brand small{display:block;color:#93a4b2;font-size:12px;margin-top:2px}.sidebar nav{display:grid;gap:14px}.nav-section{display:grid;gap:2px}.nav-section p{margin:0 0 4px;padding:0 10px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#6f8394}.nav-section a{display:flex;gap:10px;align-items:center;padding:10px;border-radius:9px;color:#dbe4ea;text-decoration:none;font-weight:600;font-size:14px}.nav-section a:hover{background:#1c2f3d}.nav-section a.active{background:#087f8c;color:#fff}.nav-section a span{width:22px;text-align:center}.nav-section a{position:relative}.menu-costs .feedback{position:sticky;top:0;z-index:2}.nav-badge{margin-left:auto;min-width:20px;padding:1px 6px;border-radius:999px;background:#d92d20;color:#fff;font-size:12px;font-weight:800;text-align:center}.shell.compact .nav-badge{position:absolute;top:2px;right:4px;margin:0;font-size:10.5px}.logout{margin-top:auto;background:#1c2f3d;color:#dbe4ea}.content{min-width:0;background:#f4f6f8}.topbar,.sidebar-backdrop{display:none}.register{padding:24px;max-width:1440px}.page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.page-header h1{font-size:26px}.shift-control span{display:inline-block;font-size:12px;font-weight:700;padding:8px 10px;border-radius:9px;background:#dcfce7;color:#166534}.admin{max-width:1200px;margin:0;min-height:100vh}.admin header.page-header{margin-bottom:16px}.report-cards .positive strong{color:#166534}.report-cards .negative strong{color:#b42318}.kitchen{min-height:100vh}@media(max-width:900px){.shell{grid-template-columns:1fr}.topbar{display:flex;align-items:center;gap:12px;position:sticky;top:0;z-index:15;background:#12202b;color:#fff;padding:10px 14px}.menu-toggle{background:transparent;color:#fff;font-size:22px;padding:4px 8px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;z-index:30;transform:translate(-100%);transition:transform .2s ease}.menu-open .sidebar{transform:none}.menu-open .sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;z-index:25}.register{padding:16px}}.area-tabs{display:flex;gap:6px;flex-wrap:wrap}.area-tabs button{background:#eef2f6;color:#334155;display:flex;gap:8px;align-items:center}.area-tabs button small{font-weight:600;font-size:11px;opacity:.75}.area-tabs button.active{background:#087f8c;color:#fff}.table-grid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr))}.pick-tables{display:grid;gap:10px;margin:8px 0}.pick-tables p{margin:0 0 6px;font-size:12px;font-weight:800;color:#475569}.pick-tables div{display:flex;flex-wrap:wrap;gap:6px}.pick-tables button{background:#fff;color:#0f766e;border:1px solid #99f6e4;padding:8px 12px;min-width:44px}.people{display:grid;gap:6px;font-size:13px;font-weight:700;color:#334155}.people .segmented{grid-template-columns:repeat(4,1fr)}.segmented button:disabled{opacity:.4;cursor:not-allowed}.ticket.late{border-color:#b42318}.ticket.late .ticket-head span{background:#fee2e2;color:#991b1b}.stock-import{background:#fff;border-radius:14px;padding:20px;margin-bottom:18px;display:grid;gap:12px}.stock-import h2{margin:0}.import-inputs{display:grid;grid-template-columns:1fr;gap:12px}.import-inputs textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:10px;font:inherit;resize:vertical}.qty-cell{display:flex;gap:6px;align-items:center}.qty-cell input{width:90px}.qty-cell select{width:auto}.stock-import td input{min-width:80px}.warn-text{display:block;color:#b45309}.feedback{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border-radius:8px;margin:0 0 12px;font-size:14px}.feedback.ok{background:#ecfdf5;color:#065f46}.feedback.error{background:#fef2f2;color:#b42318}.feedback .link{padding:0 4px}.table-meta{font-size:11px;opacity:.85}.table.late{background:#fee2e2;color:#991b1b}.quick-sales{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px;margin-top:18px}.quick-sales .muted{grid-column:1/-1}.new-quick{grid-column:1/-1;background:#e6f0ef;color:#14533f}.order-details{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.order-details .link{font-size:13px;font-weight:600;text-align:left}.line-items .complimentary strong{color:#166534;font-size:13px}.line-items .complimentary s{color:#94a3b8;font-weight:500;margin-right:4px}.line-items small.line-actions button.neutral{background:#e0f2fe;color:#075985}.print-bill{display:none}@media print{#root{display:none}body{background:#fff}.print-bill{display:block;width:72mm;font:12px/1.4 ui-monospace,Menlo,monospace;color:#000}.print-bill h1{font-size:16px;text-align:center;margin:0 0 4px}.print-bill p{margin:2px 0;text-align:center}.print-bill table{width:100%;border-collapse:collapse;margin:8px 0;border-top:1px dashed #000;border-bottom:1px dashed #000}.print-bill td{padding:3px 0;vertical-align:top}.print-bill td:last-child{text-align:right;white-space:nowrap}.print-bill .row{display:flex;justify-content:space-between}.print-bill .total{font-weight:700;font-size:14px}.print-bill .footer{margin-top:8px}}.report-cards small.up{color:#166534}.report-cards small.down{color:#b42318}.report-section{display:grid;gap:8px}.report-section h3{margin:0}.cost-line{font-size:13px}.day-picker{display:flex!important;align-items:center;gap:8px;width:auto}.day-picker input{width:auto}.note-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.note-chips button{min-height:44px;padding:0 14px;background:#f1f5f9;color:#17212b}.note-chips button.active{background:#087f8c;color:#fff}.approval-bar{position:fixed;top:12px;right:12px;z-index:40;width:min(560px,calc(100vw - 24px));display:grid;gap:8px;box-shadow:0 12px 32px #1018282e;border-radius:14px}.approval-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:var(--warn-soft);border:2px solid #fec84b;color:var(--ink);font-size:16px;line-height:1.35}.approval-item small{color:var(--muted);font-weight:600}.approval-item div{display:flex;gap:8px;flex:none}.approval-item button{min-height:52px;padding:0 20px;font-size:17px}.approval-item .approve{background:var(--ok,#12805c);color:#fff}.approval-item .reject{background:var(--surface);color:var(--danger);border:1px solid var(--line)}.approval-error{margin:0;color:var(--danger);font-weight:600}.dialog-waiting{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink-2)}.spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--brand);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:700px){.approval-item{flex-direction:column;align-items:stretch}.approval-item div button{flex:1}}:root{--brand: #087f8c;--brand-strong: #066570;--brand-soft: #e3f3f3;--ink: #17212b;--ink-2: #344054;--muted: #667085;--line: #e4e7ec;--surface: #ffffff;--surface-2: #f8fafb;--page: #f1f3f6;--navy: #12202b;--navy-2: #1c2f3d;--danger: #b42318;--danger-soft: #fee4e2;--warn: #93370d;--warn-soft: #fef0c7;--ok: #067647;--ok-soft: #dcfae6;--gift: #075985;--gift-soft: #e0f2fe;--radius: 12px;--radius-lg: 16px;--shadow: 0 1px 2px #1018280d, 0 1px 3px #1018281a;--shadow-lg: 0 24px 48px -12px #10182847;--touch: 48px;font-family:Segoe UI,Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--page);-webkit-tap-highlight-color:transparent}body{background:var(--page)}button{transition:background-color .12s ease,transform .06s ease,box-shadow .12s ease;touch-action:manipulation}button:active:not(:disabled){transform:scale(.97)}button:disabled{cursor:not-allowed}button.secondary{background:#eaecf0;color:var(--ink-2)}button.danger{background:var(--danger-soft);color:var(--danger)}input,select,textarea{font:inherit;color:var(--ink)}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:3px solid #08808c55;outline-offset:1px}.content{background:var(--page)}.admin section,.stock-import{box-shadow:var(--shadow);border:1px solid var(--line)}.page-header h1{letter-spacing:-.01em}.brand{padding:4px 8px 14px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--brand);font-size:22px;flex:none}.brand strong{line-height:1.2}.shell.compact{grid-template-columns:76px minmax(0,1fr)}.shell.compact .sidebar{padding:14px 8px}.shell.compact .brand{justify-content:center;padding:0 0 12px}.shell.compact .brand>div:last-child,.shell.compact .nav-section p{display:none}.shell.compact .nav-section a{flex-direction:column;gap:3px;padding:9px 2px;font-size:10.5px;text-align:center;line-height:1.15}.shell.compact .nav-section a span{font-size:20px;width:auto}.shell.compact .logout{font-size:11px;padding:10px 4px}@media(max-width:900px){.shell.compact{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0f172a8c;display:grid;place-items:center;padding:16px;animation:fade .12s ease}.modal{width:min(100%,460px);max-height:calc(100vh - 32px);overflow:auto;background:var(--surface);border-radius:20px;box-shadow:var(--shadow-lg);padding:22px;display:grid;gap:16px;animation:rise .14s ease}.modal.wide{width:min(100%,860px)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0}.modal-head h2{font-size:20px}.modal-close{width:44px;height:44px;padding:0;border-radius:12px;background:#f2f4f7;color:var(--ink-2);font-size:18px;flex:none}.dialog-message{margin:-6px 0 0;color:var(--muted);line-height:1.45}.dialog-choices{display:flex;flex-wrap:wrap;gap:8px}.dialog-choices button{min-height:var(--touch);padding:10px 16px;background:var(--brand-soft);color:var(--brand-strong);font-size:15px}.dialog-form{display:grid;gap:12px}.dialog-form input{min-height:54px;font-size:18px;border:1.5px solid #d0d5dd;border-radius:12px;padding:12px 14px}.dialog-form input.dialog-number{font-size:26px;font-weight:700;text-align:right;font-variant-numeric:tabular-nums}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.keypad.extra button:last-child{grid-column:span 3}.keypad button{min-height:58px;font-size:22px;background:#f2f4f7;color:var(--ink)}.dialog-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:4px}.dialog-actions button{min-height:54px;font-size:16px}.dialog-actions button.danger{background:var(--danger);color:#fff}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(8px) scale(.98)}}.columns-plot{height:200px;gap:4px;padding-top:22px;border-bottom:1px solid var(--line);overflow:visible}.column{position:relative;min-width:0}.column .bar{width:min(100%,24px);background:#0891a0;border-radius:4px 4px 0 0}.column:hover .bar{background:#066e7a}.column small{position:absolute;bottom:-22px;transform:none;font-size:11px;color:var(--muted)}.column .peak{position:absolute;top:-20px;font-size:11px;font-weight:700;color:var(--ink-2);white-space:nowrap}.column .tip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);display:none;z-index:5;background:var(--navy);color:#fff;font-size:12px;padding:6px 9px;border-radius:8px;white-space:nowrap;pointer-events:none}.column:hover .tip,.column:focus .tip{display:block}.columns details{margin-top:30px}.report-cards>div{background:var(--surface-2);border:1px solid var(--line);min-width:130px}.report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.auth{background:radial-gradient(circle at top right,#c7edf3,var(--page) 60%)}.card{border:1px solid var(--line)}.card input,.card form button{min-height:52px;font-size:16px}.pin-card{width:min(100%,400px);text-align:center;display:grid;gap:14px;padding:32px 28px}.pin-card h1{font-size:24px}.pin-dots{display:flex;justify-content:center;gap:14px;margin-top:6px}.pin-dots span{width:18px;height:18px;border-radius:50%;border:2px solid #d0d5dd;transition:background-color .1s ease,border-color .1s ease}.pin-dots span.needed{border-color:#98a2b3}.pin-dots span.filled{background:var(--brand);border-color:var(--brand)}.pin-dots.wrong{animation:shake .3s ease}.pin-dots.wrong span{border-color:var(--danger)}.pin-message{margin:0;min-height:21px}.pin-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pin-pad button{min-height:68px;font-size:26px;font-weight:700;background:#f2f4f7;color:var(--ink);border-radius:14px}.pin-pad button.go{background:var(--brand);color:#fff;font-size:18px}.pin-pad button.go:disabled{background:#b2dfe2}.pin-pad button.secondary:disabled{opacity:.4}@keyframes shake{25%{transform:translate(-8px)}75%{transform:translate(8px)}}.admin{padding:24px}.admin-stack{display:grid;gap:16px}.admin section{border-radius:var(--radius-lg);padding:20px}.admin section>h2{margin:0 0 12px;display:flex;align-items:center;gap:8px}.admin section>.muted{margin:-4px 0 14px}.admin .section-head{margin:0 0 12px}.count{font-size:12px;font-weight:700;color:var(--muted);background:#f2f4f7;border-radius:999px;padding:3px 9px}.page-tabs{margin:0 0 16px}.admin nav.page-tabs{margin:0 0 16px}.admin nav.page-tabs button{background:var(--surface);color:var(--ink-2)}.admin nav.page-tabs button.active{background:var(--brand);color:#fff}.field{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--ink-2);min-width:0}.admin .field input,.admin .field select,.recipe-stock .field input,.recipe-stock .field select,.admin select,.admin input:not([type=checkbox]),.admin textarea{min-height:48px;border:1.5px solid #d0d5dd;border-radius:10px;padding:10px 12px;background:var(--surface);font-size:15px;font-weight:500;width:100%}.admin form.field-row{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:0}.field-row .field{flex:1 1 170px}.field-row .field.grow{flex:2 1 240px}.field-row .field.small{flex:0 1 100px}.admin form.field-row>button,.role-row>button{min-height:48px;padding:0 22px;flex:none}.toggle,.admin .toggle{display:flex;align-items:center;gap:10px;min-height:48px;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer}.toggle input{width:22px!important;height:22px;min-height:0!important;accent-color:var(--brand);margin:0}.admin button.primary,.recipe-stock button.primary{background:var(--brand);color:#fff}.inline-actions{gap:8px;margin-top:12px}.inline-actions button,.inline-action{min-height:44px;padding:0 14px;font-size:14px;background:#eef1f4;color:var(--ink-2);border-radius:10px}.inline-actions button.primary{background:var(--brand);color:#fff}.inline-actions .danger,.inline-actions button.danger{background:var(--danger-soft);color:var(--danger)}.inline-actions .warn{background:var(--warn-soft);color:var(--warn)}.admin-cards{gap:14px;margin-top:0}.admin-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:6px;align-content:start}.admin-card p{margin:0}.admin-card form.stacked{gap:10px;margin:0}.card-title{display:flex;justify-content:space-between;align-items:start;gap:10px}.card-title h3{margin:0;font-size:17px}.card-title .price{font-size:17px;color:var(--brand-strong);white-space:nowrap}.badge{display:inline-block;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:#f2f4f7;color:var(--ink-2);white-space:nowrap}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.ok{background:var(--ok-soft);color:var(--ok)}.role-row{display:flex;gap:8px;align-items:end;margin-top:6px}.role-row .field{flex:1}.tag-list{gap:8px}.tag-list span{font-size:14px;font-weight:600;padding:4px 4px 4px 12px;gap:6px;background:var(--brand-soft);color:var(--brand-strong)}.tag-list button{width:36px;height:36px;border-radius:999px;background:var(--surface);color:var(--ink-2);font-size:15px;padding:0}.table-admin-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.table-admin{display:grid;justify-items:center;gap:2px;padding:12px 8px 10px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.table-admin strong{font-size:24px}.table-admin small{color:var(--muted);font-weight:600}.table-admin div{display:flex;gap:6px;margin-top:8px}.table-admin button{width:44px;height:44px;padding:0;background:var(--surface);color:var(--ink-2);border:1px solid var(--line);font-size:16px}.table-admin button.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}.option-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.option-list li>span:first-child{display:grid;gap:3px}.option-list li small{display:block;color:var(--muted)}.option-list .inline-actions{margin:0;flex:none}.admin section.recipe-stock{background:transparent;border:0;box-shadow:none;padding:0}.recipe-stock__header{align-items:center}.recipe-stock__header .page-tabs{margin:0}.recipe-stock__refresh{min-height:48px;padding:0 16px;background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow)}.recipe-stock__card{border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:20px}.recipe-stock button,.recipe-stock input,.recipe-stock select{min-height:48px;border-radius:10px}.recipe-stock__form{gap:12px}.stock-import{border-radius:var(--radius-lg)}.stock-import textarea{font-size:15px}.stock-import .inline-actions button.primary{min-height:48px;padding:0 22px}.admin form.recipe-stock__form{grid-template-columns:1fr;margin:0}.closed-list li{padding:0}.closed-row{width:100%;display:grid;grid-template-columns:64px minmax(0,1fr) auto 110px;gap:12px;align-items:center;text-align:left;background:transparent;color:var(--ink);padding:12px 4px;min-height:60px;font-weight:500}.closed-row:hover{background:var(--surface-2)}.closed-row>span:nth-child(2){display:grid;gap:2px;min-width:0}.closed-row small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.closed-time{font-variant-numeric:tabular-nums;font-weight:700;color:var(--muted)}.closed-total{text-align:right;font-variant-numeric:tabular-nums}.payment-fix{padding:0!important;border:0!important;box-shadow:none!important;display:grid;gap:10px}.payment-fix h3{margin:0;font-size:15px}.payment-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.segmented-row{display:flex;gap:6px}.segmented-row button{min-height:44px;min-width:88px;background:#f2f4f7;color:var(--ink-2)}.segmented-row button.active{background:var(--navy);color:#fff;opacity:1}.day-actions{margin:0;align-items:center}.product-group+.product-group{margin-top:18px}.group-title{margin:0 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}.order-buttons{display:flex;gap:6px}.order-buttons button{width:44px;height:40px;padding:0;background:#f2f4f7;color:var(--ink-2);font-size:18px}.order-buttons button:disabled{opacity:.35}.count-input,.admin .count-input{display:flex;align-items:center;gap:6px}.count-input input{width:120px!important;text-align:right}.count-input span{color:var(--muted);font-size:13px}.count-table td{vertical-align:middle}.share{display:flex;align-items:center;gap:8px;min-width:160px}.share-track{display:block;width:120px;flex:none}.share-bar{display:block;height:12px;background:#0891a0;border-radius:0 4px 4px 0}.share b{font-size:13px;font-weight:700;color:var(--ink-2);font-variant-numeric:tabular-nums}.overview-cards>div{gap:4px}.overview-cards>div strong{font-size:24px}.overview-cards>div small{color:var(--muted);font-size:12px}.overview-cards>div.attention{background:#ede9fe;border-color:#c4b5fd}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;align-items:start}.overview-cards>div.waiting{background:var(--warn-soft);border-color:#fec84b}.shell.compact .sidebar{gap:8px;padding:10px 6px}.shell.compact .sidebar nav{gap:4px}.shell.compact .nav-section{gap:2px}.shell.compact .nav-section a{padding:6px 2px;font-size:10px}.shell.compact .nav-section a span{font-size:18px}.shell.compact .brand{padding-bottom:8px}.shell.compact .brand-mark{width:34px;height:34px;font-size:18px}.pos{height:100vh;padding:16px;display:grid;gap:14px;overflow:hidden}.pos-floor{display:flex;flex-direction:column}.pos-floor .floor-grid{flex:1}.pos header{margin:0;justify-content:flex-start}.pos-order{grid-template-columns:minmax(0,1fr) clamp(360px,33vw,470px)}.pos .feedback{margin:0}.pos-bar{display:flex;align-items:center;gap:12px;min-width:0}.pos-tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;min-width:0;padding:2px}.pos-tabs::-webkit-scrollbar{display:none}.pos-tabs button{min-height:64px;padding:0 26px;display:flex;align-items:center;gap:8px;white-space:nowrap;background:var(--surface);color:var(--ink-2);font-size:19px;box-shadow:var(--shadow)}.pos-tabs button small{font-size:12px;font-weight:700;padding:2px 7px;border-radius:999px;background:#f2f4f7;color:var(--muted)}.pos-tabs button.active{background:var(--brand);color:#fff}.pos-tabs button.active small{background:#ffffff2e;color:#fff}.pos-stats{margin-left:auto;display:flex;gap:8px;flex:none}.pos-stats span{background:var(--surface);border-radius:12px;padding:9px 14px;font-size:13px;color:var(--muted);box-shadow:var(--shadow);white-space:nowrap}.pos-stats b{color:var(--ink);font-size:16px;margin-right:3px}.pos-bar .back{min-height:52px;padding:0 18px;background:var(--navy);color:#fff;font-size:16px;flex:none}.floor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-rows:minmax(170px,auto);gap:16px;overflow-y:auto;align-content:start;padding:2px 2px 16px}.floor-tile{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;touch-action:manipulation;background:var(--surface);color:var(--ok);border:2px solid transparent;box-shadow:var(--shadow);border-radius:var(--radius-lg);padding:12px}.floor-tile strong{font-size:44px;line-height:1;color:var(--ink)}.floor-tile .tile-meta{font-size:16px;font-weight:600;color:var(--muted)}.floor-tile .tile-total{font-size:24px;font-weight:800}.floor-tile.busy{background:var(--warn-soft);border-color:#fec84b;color:var(--warn)}.floor-tile.busy .tile-meta{color:var(--warn)}.floor-tile.late{background:var(--danger-soft);border-color:#fda29b;color:var(--danger)}.floor-tile.late .tile-meta{color:var(--danger)}.floor-tile.new{background:var(--brand-soft);color:var(--brand-strong);border:2px dashed #7cc4c9;box-shadow:none}.floor-tile.new strong{color:var(--brand-strong)}.floor-hint{grid-column:1 / -1}.pos-menu{display:flex;flex-direction:column;gap:14px;min-height:0;min-width:0}.pos-menu .product-grid{flex:1}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));grid-auto-rows:minmax(124px,auto);gap:12px;overflow-y:auto;align-content:start;padding:2px 2px 16px}.product-tile{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:10px;text-align:left;background:var(--surface);color:var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:14px;border-top:4px solid var(--brand)}.product-tile .product-name{font-size:18px;font-weight:700;line-height:1.25}.product-tile .product-foot{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.product-tile strong{font-size:19px;color:var(--brand-strong)}.product-tile small{font-size:12px;font-weight:600;color:var(--muted)}.product-tile small.sold{color:var(--danger)}.product-tile:disabled{opacity:.45;border-top-color:#d0d5dd}.product-tile:disabled strong{color:var(--muted)}.pos-ticket{display:flex;flex-direction:column;min-height:0;background:var(--surface);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.ticket-head{padding:16px 18px 12px;border-bottom:1px solid var(--line)}.ticket-head h2{font-size:22px}.ticket-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ticket-chips button{min-height:40px;padding:6px 12px;background:#f2f4f7;color:var(--ink-2);font-size:14px;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticket-chips .note{max-width:260px}.ticket-empty{margin:auto;padding:24px;text-align:center;color:var(--muted);font-size:16px}.ticket-lines{list-style:none;margin:0;padding:6px 10px;overflow-y:auto;flex:1;min-height:80px}.ticket-lines li{border-radius:12px}.ticket-lines li+li{border-top:1px solid #f2f4f7}.ticket-lines li.selected{background:var(--brand-soft);border-top-color:transparent}.ticket-lines .line{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;align-items:start;text-align:left;background:transparent;color:var(--ink);padding:12px 8px;font-weight:500;min-height:52px}.ticket-lines .line:disabled{cursor:default;opacity:1}.line-qty{font-weight:800;font-size:16px;color:var(--brand-strong)}.line-name{font-size:16px;font-weight:600;line-height:1.3}.line-name em{display:block;font-style:normal;font-weight:500;font-size:13px;color:var(--muted);margin-top:2px}.line-name em.gift{color:var(--gift)}.line-price{font-weight:700;font-size:16px;white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.line-price s{display:block;font-size:12px;font-weight:500;color:#98a2b3}li.complimentary .line-price{color:var(--ok);font-size:13px}.line-actions{display:flex;flex-wrap:wrap;gap:8px;padding:0 8px 12px 58px}.line-actions button{min-width:52px;min-height:var(--touch);padding:0 16px;font-size:16px;background:var(--surface);color:var(--ink-2);box-shadow:var(--shadow)}.line-actions button.gift{background:var(--gift-soft);color:var(--gift);box-shadow:none}.line-actions button.danger{background:var(--danger-soft);color:var(--danger);box-shadow:none}.line-split{display:flex;align-items:center;gap:10px;padding:0 8px 12px 58px;font-size:14px;color:var(--muted)}.line-split button{width:var(--touch);height:var(--touch);padding:0;font-size:20px;background:#f2f4f7;color:var(--ink)}.line-split b{min-width:24px;text-align:center;font-size:18px;color:var(--ink)}.ticket-tools{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}.ticket-tools button{min-height:44px;padding:0 14px;background:#f2f4f7;color:var(--ink-2);font-size:14px}.ticket-tools button.danger{background:var(--danger-soft);color:var(--danger)}.ticket-tools:not(.compact) button:last-child:not(.danger):not(.secondary){background:var(--brand);color:#fff}.ticket-tools .muted{align-self:center}.ticket-tools.compact{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:6px;padding:8px 10px}.ticket-tools.compact button{min-height:54px;padding:4px 2px;display:grid;place-items:center;gap:1px;font-size:12px;line-height:1.1;background:#f2f4f7;color:var(--ink-2)}.ticket-tools.compact button span{font-size:17px;line-height:1}.ticket-tools.compact button.danger{background:var(--danger-soft);color:var(--danger)}.ticket-foot{padding:12px 16px 16px;background:var(--surface-2);border-top:1px solid var(--line);display:grid;gap:10px}.ticket-totals{margin:0;display:grid;gap:4px}.ticket-totals div{display:flex;justify-content:space-between;font-size:15px}.ticket-totals dt{color:var(--muted)}.ticket-totals dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.ticket-totals .due{font-size:24px;margin-top:2px}.ticket-totals .due dt{color:var(--ink);font-weight:700}.ticket-totals .due dd{font-weight:800}.split-people{display:grid;grid-template-columns:auto repeat(4,1fr);gap:6px;align-items:center}.split-people span{font-size:13px;font-weight:700;color:var(--muted);padding-right:4px}.split-people button{min-height:44px;padding:0 4px;background:var(--surface);color:var(--ink-2);font-size:14px;box-shadow:var(--shadow)}.split-people button.active{background:var(--navy);color:#fff}.split-people button:disabled{opacity:.35}.share-note{margin:-4px 0 0;font-size:13px}.pay-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pay{min-height:72px;font-size:22px;font-weight:800;display:grid;place-content:center;gap:2px;font-variant-numeric:tabular-nums;border-radius:14px}.pay small{font-size:13px;font-weight:700;opacity:.85;text-transform:uppercase;letter-spacing:.06em}.pay.cash{background:#079455;color:#fff}.pay.card{background:#1f4e79;color:#fff}.pick-areas{display:grid;gap:16px}.pick-areas h3{margin:0 0 8px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.pick-grid button{min-height:72px;display:grid;place-content:center;gap:2px;background:var(--brand-soft);color:var(--brand-strong);font-size:22px}.pick-grid small{font-size:12px}@media(max-width:900px){.pos{height:auto;overflow:visible;padding:12px}.pos-order{grid-template-columns:1fr}.pos-bar{flex-wrap:wrap}.pos-stats{margin-left:0}.floor-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));grid-auto-rows:minmax(96px,auto);overflow:visible}.floor-tile strong{font-size:24px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));overflow:visible}.ticket-lines{overflow:visible}.ticket-tools.compact{grid-template-columns:repeat(3,1fr)}}.floor-tile .tile-flag{font-size:14px;font-weight:700;padding:2px 8px;border-radius:999px;background:#ffffffb3}.floor-tile .tile-flag.ready{color:#15803d}.floor-tile.billed{background:#ede9fe;border-color:#c4b5fd;color:#5b21b6}.floor-tile.billed .tile-meta{color:#5b21b6}.ticket-lines li.unsent .line-qty{color:var(--warn)}.line-name em.wait{color:var(--warn);font-weight:700}.send-kitchen{min-height:56px;display:flex;justify-content:center;align-items:center;gap:10px;background:#dc6803;color:#fff;font-size:18px;border-radius:14px}.send-kitchen b{background:#fff3;border-radius:999px;padding:2px 10px;font-size:15px}.lock-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 12px 0;padding:10px 12px;border-radius:12px;background:#ede9fe;color:#5b21b6;font-weight:700;font-size:14px}.lock-banner button{min-height:44px;padding:0 14px;background:#5b21b6;color:#fff;flex:none}.late-list{display:grid;gap:8px}.late-question{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border-radius:14px;background:var(--danger-soft);color:var(--danger);border:1px solid #fda29b;font-size:15px;line-height:1.35}.pos-ticket .late-question{margin:10px 12px 0;font-size:14px}.late-question div{display:flex;gap:8px;flex:none}.late-question button{min-height:48px;padding:0 16px;background:var(--surface);color:var(--danger);border:1px solid #fda29b}.late-question button.yes{background:#079455;color:#fff;border-color:#079455}.line-name em.ready{color:var(--ok);font-weight:700}.line-name em.paid{color:var(--gift);font-weight:700}.pay-amount input{font-size:1.2rem}.cash-panel{margin-top:16px}.cash-panel .section-head{margin-top:0}.cash-cards>div{position:relative}.cash-cards .link{justify-self:start;padding:0;font-size:14px;min-height:0}.cash-cards .cash-expected{background:var(--brand-soft);border-color:transparent}.cash-ok{color:var(--ok)}.cash-short{color:var(--danger)}.cash-over{color:#b54708}.report-cards .cash-difference.cash-ok{background:var(--ok-soft);border-color:transparent}.report-cards .cash-difference.cash-short{background:var(--danger-soft);border-color:transparent}.report-cards .cash-difference.cash-over{background:#fef0c7;border-color:transparent}.report-cards .cash-difference.cash-ok strong{color:var(--ok)}.report-cards .cash-difference.cash-short strong{color:var(--danger)}.report-cards .cash-difference.cash-over strong{color:#b54708}.cash-actions button{min-height:var(--touch)}.cash-notice{justify-content:flex-start;flex-wrap:wrap}.cash-subhead{margin:22px 0 8px;font-size:15px}.cash-movements td,.cash-movements th{padding:8px 6px;text-align:left;border-bottom:1px solid var(--line)}.cash-movements .cash-in{color:var(--ok);font-weight:700;white-space:nowrap}.cash-movements .cash-out{color:var(--danger);font-weight:700;white-space:nowrap}.cash-movements tr.is-deleted td{color:var(--muted);text-decoration:line-through}.cash-movements tr.is-deleted td small{text-decoration:none}.modal form.cash-form,.modal form.cash-count{grid-template-columns:minmax(0,1fr);margin:0}.cash-form{display:grid;gap:12px}.cash-form label,.cash-total{display:grid;gap:6px;font-weight:600;font-size:14px}.cash-form .dialog-choices button.chosen{background:var(--brand);color:#fff}.cash-count{display:grid;gap:14px}.cash-denominations{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:8px 28px}.cash-denomination{display:grid;grid-template-columns:70px 48px 1fr 48px 110px;gap:6px;align-items:center}.cash-denomination button{min-height:var(--touch);padding:0;font-size:20px}.dialog-form .cash-denomination input{text-align:center;min-height:var(--touch);padding:8px;font-size:18px}.cash-denomination__label{font-weight:700}.cash-denomination__sum{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.cash-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cash-preview span{display:grid;gap:4px;padding:12px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);font-size:13px}.cash-preview strong{font-size:18px}@media(max-width:560px){.cash-denominations{grid-template-columns:1fr}.cash-denomination{grid-template-columns:56px 44px 1fr 44px 90px}.cash-preview{grid-template-columns:1fr}}.campaign-card.inactive{opacity:.7}.campaign-card .campaign-label{font-size:17px;color:var(--ok);white-space:nowrap}.campaign-card .campaign-targets{font-size:13px}.campaign-card .inline-actions{align-items:center}.campaign-switch{min-height:36px;margin-right:auto}.campaign-badges{display:flex;gap:6px}.campaign-form{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;margin:0!important}.campaign-form fieldset{border:0;padding:0;margin:0;display:grid;gap:8px;min-width:0}.campaign-form legend{font-size:13px;font-weight:700;color:var(--ink-2);padding:0;margin-bottom:8px}.campaign-form legend small{font-weight:500;color:var(--muted)}.campaign-form .hint{margin:-6px 0 0;font-size:13px}.campaign-times{display:grid;grid-template-columns:1fr 1fr;gap:12px}.campaign-form input[type=time],.campaign-form input[type=date]{min-height:48px;font-size:17px}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip-row button{min-height:48px;min-width:56px;padding:0 14px;border-radius:999px;background:#f1f5f9;color:var(--ink);font-weight:700}.chip-row button.active{background:var(--brand);color:#fff}.chip-row.small button{min-height:40px;min-width:0;font-size:13px;font-weight:600}.with-unit{display:flex;align-items:center;gap:8px}.with-unit input{flex:1;font-size:18px}.with-unit b{font-size:18px;color:var(--muted)}.value-field{max-width:260px}.target-list{display:grid;gap:10px;max-height:260px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2)}.target-group{display:grid;gap:6px}.target-category{margin:0;min-height:40px;font-weight:700}.target-category small{font-weight:500;color:var(--muted)}.campaign-preview{background:var(--ok-soft);color:var(--ok);border-radius:var(--radius);padding:10px 14px;font-weight:700}.campaign-preview p{margin:2px 0}.campaign-preview .muted{font-weight:500}.product-tile.campaign{border-top-color:var(--ok)}.product-tile .campaign-price{display:grid;gap:2px}.product-tile .campaign-price s{font-size:13px;font-weight:500;color:#98a2b3}.product-tile .campaign-price strong{color:var(--ok)}.product-tile .campaign-tag{display:inline-block;align-self:flex-start;font-size:12px;font-weight:700;color:var(--ok);background:var(--ok-soft);border-radius:999px;padding:2px 8px}.line-name em.campaign{color:var(--ok);font-weight:600}.ticket-totals .campaign dd,.ticket-totals .campaign dt{color:var(--ok)}@media(max-width:560px){.campaign-times{grid-template-columns:1fr}}.picker-campaign{margin:0;padding:8px 12px;border-radius:var(--radius);background:var(--ok-soft);color:var(--ok);font-weight:700}.ticket-chips .customer-chip{max-width:280px}.ticket-chips .customer-chip.set{background:var(--brand-soft);color:var(--brand-strong)}.customer-card{display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:center}.customer-card>div:first-child{display:grid;gap:4px}.customer-card strong{font-size:18px}.customer-card small{color:var(--muted)}.customer-card p{grid-column:1 / -1;margin:0}.customer-points{display:grid;justify-items:center;background:var(--brand-soft);color:var(--brand-strong);border-radius:var(--radius);padding:8px 14px}.customer-points b{font-size:24px}.customer-used{background:var(--warn-soft);color:var(--warn);border-radius:10px;padding:8px 12px;font-weight:600}.customer-actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.customer-actions button{min-height:var(--touch);padding:10px 16px;flex:1 1 140px}.customer-actions .secondary{background:#f2f4f7;color:var(--ink-2)}.customer-actions .danger{background:var(--danger-soft);color:var(--danger)}.customer-search{display:grid;gap:12px}.customer-search input{min-height:54px;font-size:18px;border:1.5px solid #d0d5dd;border-radius:12px;padding:12px 14px}.customer-results{list-style:none;margin:0;padding:0;display:grid;gap:8px}.customer-results button{width:100%;min-height:60px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;background:var(--surface-2);color:var(--ink);border:1px solid var(--line);text-align:left}.customer-results button span{display:grid;gap:2px}.customer-results small{color:var(--muted);font-weight:500}.customer-results b{color:var(--brand-strong);white-space:nowrap}.customer-form .kvkk{min-height:var(--touch);font-size:16px;font-weight:600}.customer-form .kvkk{display:flex;align-items:center;gap:10px}.customer-form .kvkk input{flex:none;width:24px;height:24px;min-height:0;padding:0;margin:0}.customer-filters{margin-bottom:12px}.customer-table tr.clickable{cursor:pointer}.customer-table tr.clickable:hover td{background:var(--surface-2)}.customer-cards{margin-top:0}.customer-edit{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end}.customer-edit .wide{grid-column:1 / -1}.customer-edit button,.customer-adjust button{min-height:48px}td.negative{color:var(--danger)}.modal h3{margin:4px 0 0;font-size:16px}.shop{max-width:640px;margin:0 auto;min-height:100vh;padding:0 16px 96px;background:var(--surface);color:var(--ink)}.shop-head{display:block;padding:20px 0 12px}.shop-head h1{margin:0;font-size:1.5rem}.shop-head p{margin:4px 0 0;color:var(--muted)}.shop .shop-warn{color:var(--warn);background:var(--warn-soft);padding:8px 10px;border-radius:8px;margin-top:10px}.shop .shop-notice{color:var(--ok);background:var(--ok-soft);padding:8px 10px;border-radius:8px;margin-top:10px}.shop-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.shop-actions button,.shop-actions a{flex:1 1 auto;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);color:var(--ink);font:inherit;text-align:center;text-decoration:none}.shop-tabs{position:sticky;top:0;z-index:2;display:flex;gap:6px;overflow-x:auto;padding:10px 0;background:var(--surface);border-bottom:1px solid var(--line)}.shop-tabs button{flex:none;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font:inherit}.shop-tabs button.active{background:var(--brand);border-color:var(--brand);color:#fff}.shop-menu{list-style:none;margin:0;padding:0}.shop-menu li{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.shop-menu li.soldout{opacity:.55}.shop-menu img{width:72px;height:72px;object-fit:cover;border-radius:10px;flex:none}.shop-menu li>div{flex:1;min-width:0}.shop-menu h3{margin:0;font-size:1rem}.shop-menu p{margin:4px 0;color:var(--muted);font-size:.9rem}.shop-menu li>button{flex:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--brand);color:#fff;font-size:1.5rem;line-height:1}.shop-menu li>span{flex:none;color:var(--danger);font-size:.9rem}.shop-cart-bar{position:fixed;left:16px;right:16px;bottom:16px;max-width:608px;margin:0 auto;padding:16px;border:0;border-radius:14px;background:var(--brand);color:#fff;font:inherit;font-weight:600;box-shadow:0 8px 24px #0000002e}.shop-sheet{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:flex-end;justify-content:center;background:#10182873}.shop-sheet>div,.shop-sheet>form{width:100%;max-width:640px;max-height:90vh;overflow-y:auto;padding:16px;border-radius:16px 16px 0 0;background:var(--surface);display:flex;flex-direction:column;gap:12px}.shop-sheet header{display:flex;justify-content:space-between;align-items:center}.shop-sheet h2{margin:0;font-size:1.2rem}.shop-sheet header button{border:0;background:none;font-size:1.2rem;padding:8px;color:var(--ink)}.shop-sheet fieldset{border:1px solid var(--line);border-radius:10px;padding:8px 12px;margin:0}.shop-sheet legend{font-weight:600;padding:0 4px}.shop-sheet fieldset label{display:flex;gap:10px;align-items:center;padding:8px 0}.shop-sheet form>label,.shop-sheet>form>label{display:flex;flex-direction:column;gap:4px;font-weight:600}.shop-sheet input:not([type=radio]):not([type=checkbox]),.shop-sheet select{padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;font-weight:400}.shop-lines{list-style:none;margin:0;padding:0}.shop-lines li{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.shop-lines li>div{flex:1;min-width:0;display:flex;flex-direction:column}.shop-lines small{color:var(--muted)}.shop-qty{display:flex;align-items:center;gap:8px}.shop-qty button{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:var(--surface-2);font:inherit}.shop-total{text-align:right;margin:0}.shop-button{display:block;width:100%;padding:14px;border:0;border-radius:12px;background:var(--brand);color:#fff;font:inherit;font-weight:600;text-align:center;text-decoration:none}.shop-button:disabled{opacity:.5}.shop-error{color:var(--danger);background:var(--danger-soft);padding:8px 10px;border-radius:8px;margin:0}.shop-fine{color:var(--muted);font-size:.85rem;margin:0}.shop-empty{padding:64px 0;text-align:center;color:var(--muted)}.shop-live{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.shop-live h2{margin:0 0 6px;font-size:1rem}.shop-live ul{list-style:none;margin:0;padding:0}.shop-live li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid var(--line);font-size:.92rem}.shop-live li:last-child{border-bottom:0}.shop-live b{font-weight:600;white-space:nowrap}.recipe-stock{display:grid;gap:18px;color:#1f2937}.recipe-stock__header,.recipe-stock__row{display:flex;gap:16px;align-items:flex-start;justify-content:space-between}.recipe-stock__header h2{margin:3px 0}.recipe-stock__header p{margin:0;color:#64748b}.recipe-stock__refresh{background:#e2e8f0;color:#0f172a}.recipe-stock__tabs{display:flex;gap:8px;flex-wrap:wrap}.recipe-stock__tabs button{background:#e7edf0;color:#334155}.recipe-stock__tabs .active,.recipe-stock__save{background:#087f8c;color:#fff}.recipe-stock__grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(360px,2fr);gap:16px}.recipe-stock__card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px}.recipe-stock__card h3{margin:0 0 6px}.recipe-stock__card p{margin:0 0 14px;color:#64748b}.recipe-stock__form{display:grid;gap:10px}.recipe-stock input,.recipe-stock select{box-sizing:border-box;width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:10px;background:#fff;color:#0f172a}.recipe-stock button{border:0;border-radius:8px;padding:10px 13px;font-weight:700;cursor:pointer}.recipe-stock button:disabled{opacity:.5;cursor:not-allowed}.recipe-stock__recipe{grid-row:span 2}.recipe-stock__recipe .recipe-stock__row select{max-width:290px}.recipe-stock__selected{padding:10px;background:#f0fdfa;border-radius:8px;color:#115e59!important}.recipe-stock__recipe-items{display:grid;gap:8px;margin:12px 0}.recipe-stock__recipe-items>div{display:grid;grid-template-columns:minmax(0,1fr) 108px auto;gap:8px;align-items:center;padding:10px;background:#f8fafc;border-radius:8px}.recipe-stock__recipe-items span,.recipe-stock__low span{display:grid;gap:2px}.recipe-stock small{color:#64748b}.recipe-stock__remove{background:#fee2e2;color:#991b1b}.recipe-stock__add-item{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;margin-top:14px}.recipe-stock__add-item button{background:#e2e8f0;color:#0f172a}.recipe-stock__save{margin-top:12px}.recipe-stock__wide{grid-column:1/-1}.recipe-stock__low{list-style:none;margin:0;padding:0;display:grid;gap:6px}.recipe-stock__low li{display:flex;justify-content:space-between;gap:12px;padding:10px;border-radius:8px;background:#fff7ed;color:#9a3412}.recipe-stock__table-wrap{overflow:auto}.recipe-stock table{width:100%;border-collapse:collapse;font-size:14px}.recipe-stock th,.recipe-stock td{padding:10px;text-align:left;border-bottom:1px solid #e2e8f0;white-space:nowrap}.recipe-stock th{color:#64748b;font-weight:600}.recipe-stock tr.is-low td{background:#fff7ed}.recipe-stock .is-negative{color:#b91c1c;font-weight:700}.recipe-stock .is-positive{color:#047857;font-weight:700}@media(max-width:760px){.recipe-stock__header,.recipe-stock__row{flex-direction:column}.recipe-stock__grid{grid-template-columns:1fr}.recipe-stock__recipe{grid-row:auto}.recipe-stock__recipe .recipe-stock__row select{max-width:none}.recipe-stock__add-item,.recipe-stock__recipe-items>div{grid-template-columns:1fr}.recipe-stock__remove{width:100%}}.recipe-stock__link{margin:12px 0 0!important}.recipe-stock__link a{color:#087f8c;font-weight:700;text-decoration:none}.shopping-list__controls{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.shopping-list__controls .field{display:grid;gap:6px;width:150px}.shopping-list__controls .muted{flex:1 1 260px;margin:0!important}.shopping-list__toggle{display:flex;align-items:center;gap:8px;min-height:44px;font-weight:600;white-space:nowrap;cursor:pointer}.recipe-stock .shopping-list__toggle input{width:22px;height:22px}.shopping-list__table .count-input input{width:96px!important}.shopping-list__table tr.is-enough td{color:#64748b}@media(max-width:760px){.shopping-list__controls .field{width:calc(50% - 7px)}}.shopping-list{grid-template-columns:minmax(0,1fr)}.recipe-stock .shopping-list__toggle{display:flex!important;flex-direction:row}@media print{html{background:#fff}}
