:root{--bg: #111827;--panel: #1f2937;--text: #f9fafb;--muted: #9ca3af;--accent: #2563eb;--danger: #dc2626;--ok: #15803d;--warn: #b45309;--surface: #374151;--line: #4b5563;--state-free: #15803d;--state-new: #7c2d12;--state-cooking: #1e3a8a;--state-served: #374151;--on-state: #f9fafb;--on-state-muted: #e5e7eb;--on-state-warn: #fcd34d;--ok-line: #16a34a;--warn-line: #d97706;--danger-line: #ef4444;--accent-line: #3b82f6;--highlight: #f59e0b;--divider: #374151;--tint-ok: #14532d;--tint-warn: #78350f;--tint-danger: #7f1d1d;--tint-danger-soft: #3f1d1d;--tint-accent: #1e3a5f;--on-ok: #bbf7d0;--on-warn: #fde68a;--on-danger: #fecaca;--on-accent: #ffffff;--on-accent-soft: #dbeafe;--text-ok: #4ade80;--text-warn: #fbbf24;--text-danger: #fca5a5}[data-theme=light]{--bg: #f3f4f6;--panel: #ffffff;--text: #111827;--muted: #55607a;--accent: #1d4ed8;--danger: #b91c1c;--ok: #15803d;--warn: #b45309;--surface: #e5e7eb;--line: #d1d5db;--divider: #e5e7eb;--ok-line: #15803d;--warn-line: #b45309;--danger-line: #b91c1c;--accent-line: #1d4ed8;--highlight: #d97706;--tint-ok: #dcfce7;--tint-warn: #fef3c7;--tint-danger: #fee2e2;--tint-danger-soft: #fef2f2;--tint-accent: #dbeafe;--on-ok: #14532d;--on-warn: #78350f;--on-danger: #7f1d1d;--on-accent: #ffffff;--on-accent-soft: #dbeafe;--text-ok: #15803d;--text-warn: #b45309;--text-danger: #b91c1c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font-size:16px;font-weight:600;cursor:pointer}button:hover:not(:disabled){filter:brightness(1.15)}button svg{width:20px;height:20px;flex:none}button.success{background:var(--ok);border-color:var(--ok-line);color:var(--on-accent)}button.warn{background:var(--warn);border-color:var(--warn-line);color:var(--on-accent)}button:active{transform:scale(.97)}button.danger{background:var(--danger);border-color:var(--danger-line);color:var(--on-accent)}.center{display:grid;place-items:center;min-height:100vh}.page{padding:16px 16px 48px}.topbar{display:flex;align-items:center;gap:16px;padding:8px 16px;background:var(--panel)}.topbar .muted{margin-left:auto}.screens{display:flex;gap:4px}.screens a{padding:10px 14px;border-radius:10px;color:var(--text);text-decoration:none;font-size:15px}.screens a.active{background:var(--accent);font-weight:600;color:var(--on-accent)}.login{display:grid;place-items:center;gap:16px;min-height:100vh}.pin-display{font-size:40px;letter-spacing:12px}.keypad{display:grid;grid-template-columns:repeat(3,88px);gap:12px}.keypad button{height:72px;font-size:24px}.tenant-input{width:280px;text-align:center;font-size:20px;letter-spacing:2px}.login .link{background:none;border:none;color:var(--muted);text-decoration:underline;min-height:44px}.menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.menu-grid button{flex-direction:column;gap:2px}.items,.orders{list-style:none;margin:0;padding:0;display:grid;gap:8px}.items li,.orders li{display:flex;align-items:center;gap:12px;padding:12px;background:var(--panel);border-radius:10px}.items li span:first-child,.orders li span:first-child{flex:1}.total{margin:16px 0;font-size:24px;font-weight:700}.actions{display:flex;gap:8px;flex-wrap:wrap}.totals{display:grid;gap:4px;padding:12px;background:var(--panel);border-radius:10px}.grid{width:100%;border-collapse:collapse}.grid th,.grid td{padding:8px;text-align:left;border-bottom:1px solid var(--divider)}.grid tr.muted{color:var(--muted)}.error{color:var(--text-danger)}.cashier{display:flex;flex-direction:column;height:100vh}.cashier-header{display:flex;align-items:center;gap:20px;padding:10px 16px;background:var(--panel);flex-wrap:wrap}.shift-info{display:flex;flex-direction:column}.shift-info .label{font-weight:700}.header-totals{display:flex;gap:20px;flex:1;flex-wrap:wrap}.header-totals div{display:flex;flex-direction:column}.header-totals span{color:var(--muted);font-size:12px}.header-totals b{font-size:18px}.printing{padding:6px 12px;border-radius:8px;font-size:13px;white-space:nowrap}.printing.ok{background:var(--tint-ok);color:var(--on-ok)}.printing.warn{background:var(--tint-warn);color:var(--on-warn)}.printing.bad{background:var(--danger);color:var(--on-accent);font-weight:700}.cashier-body{display:flex;flex:1;min-height:0}.order-list{width:300px;flex-shrink:0;overflow-y:auto;border-right:1px solid var(--divider);padding:12px}.order-list h3{margin:0 0 12px;display:flex;align-items:center;gap:8px}.badge{background:var(--accent);border-radius:999px;padding:2px 8px;font-size:12px;color:var(--on-accent)}.order-list ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.order-card{width:100%;display:grid;gap:4px;padding:12px;text-align:left;background:var(--panel);border:2px solid transparent}.order-card.active{border-color:var(--accent)}.order-card .row{display:flex;justify-content:space-between;align-items:baseline}.order-card .amount{font-size:20px;font-weight:700}.tag{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--surface)}.order-details{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column}.details-head h3{margin:0 0 4px}.placeholder{margin:auto;color:var(--muted);font-size:18px}.positions{width:100%;border-collapse:collapse;margin:16px 0}.positions th{text-align:left;font-size:12px;color:var(--muted);font-weight:400;padding:6px 8px}.positions td{padding:10px 8px;border-top:1px solid var(--divider)}.positions .num{text-align:right;font-weight:600}.sums{display:grid;gap:6px;margin-left:auto;min-width:280px}.sums div{display:flex;justify-content:space-between;gap:24px}.sums span{color:var(--muted)}.sums .grand{border-top:1px solid var(--divider);padding-top:8px;font-size:26px}.sums .grand span{color:var(--text)}.order-details .actions{margin-top:20px;gap:12px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:grid;place-items:center;padding:16px;z-index:10}.modal{background:var(--bg);border:1px solid var(--divider);border-radius:14px;padding:20px;width:min(420px,100%);max-height:96vh;overflow-y:auto;display:grid;gap:14px;align-content:start}.modal-footer{position:sticky;bottom:-20px;display:grid;gap:10px;padding:10px 0 0;background:var(--bg);box-shadow:0 -12px 16px var(--bg)}.modal header{display:flex;justify-content:space-between;align-items:center}.modal header h3{margin:0}button.ghost{background:transparent;border-color:transparent;min-height:auto;padding:4px 8px;font-weight:400}button.ghost:hover:not(:disabled){border-color:var(--line)}.due-row,.tendered{display:flex;justify-content:space-between;align-items:baseline;padding:12px;background:var(--panel);border-radius:10px}.due-row b,.tendered b{font-size:24px}.method-tabs{display:flex;gap:8px}.method-tabs button{flex:1}.method-tabs button.active{background:var(--accent);color:var(--on-accent)}.quick-amounts{display:flex;gap:8px;flex-wrap:wrap}.quick-amounts button{flex:1;min-width:90px;font-size:14px}.keypad-block{display:grid;gap:8px}.modal .keypad{grid-template-columns:repeat(3,1fr);gap:8px}.modal .keypad button{height:54px;font-size:20px}.modal .quick-amounts button{min-width:68px;font-size:13px;padding:8px;min-height:42px}.change{display:flex;justify-content:space-between;align-items:baseline;padding:14px;border-radius:10px;background:var(--tint-ok)}.change b{font-size:34px;font-weight:800}.change.insufficient{background:var(--danger);color:var(--on-accent)}button.primary{background:var(--accent);border-color:var(--accent-line);color:var(--on-accent)}button.big{min-height:60px;font-size:18px;font-weight:700}button.wide{width:100%}button:disabled{opacity:.4;cursor:not-allowed}.modal .totals{display:grid;gap:6px}.modal .totals div{display:flex;justify-content:space-between}.modal .totals .expected{border-top:1px solid var(--divider);padding-top:6px;font-size:18px}.hint{color:var(--muted);margin:0}.empty-state{display:grid;place-items:center;gap:12px;min-height:100vh;text-align:center;padding:16px}.error.banner{margin:0;padding:10px 16px;background:var(--tint-danger);color:var(--on-danger)}.muted{color:var(--muted)}.small{font-size:12px}.pad{padding:8px}@media(max-width:900px){.cashier-body{flex-direction:column}.order-list{width:auto;border-right:none;border-bottom:1px solid var(--divider);max-height:40vh}.header-totals{gap:12px}.header-totals b{font-size:15px}.sums{margin-left:0;min-width:0}}.admin{padding:0 0 40px}.tabs{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:flex-end;padding:8px 16px 0;background:var(--panel)}.tab-group{display:flex;flex-direction:column;gap:2px}.tab-group-title{padding:0 8px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);white-space:nowrap}.tab-group-items{display:flex;flex-wrap:wrap;gap:4px}.tabs button{min-height:44px;border-radius:10px 10px 0 0;background:transparent;border-color:transparent;white-space:nowrap}.tabs button.active{background:var(--bg);font-weight:700;border-color:var(--line);border-bottom-color:var(--bg)}@media(max-width:700px){.tab-group-title{display:none}.tabs{gap:4px}}.tab{padding:16px}.toolbar{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.toolbar .spacer{flex:1}select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]){min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-size:16px}:where(select,input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range])){width:100%}input[type=checkbox]{width:24px;height:24px}.field{display:grid;gap:4px}.field>span{font-size:13px;color:var(--muted)}.field small{color:var(--muted);font-size:12px}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width:700px){.grid{min-width:560px}.grid .small{white-space:normal}}.grid tr.clickable{cursor:pointer}.grid tr.clickable:hover td,.grid tr.selected td{background:var(--panel)}.grid tr.failed td{background:var(--tint-danger-soft)}.grid .num{text-align:right;font-variant-numeric:tabular-nums}.row-actions{display:flex;gap:6px;justify-content:flex-end}.row-actions button{min-height:38px;padding:8px 12px;font-size:14px}.warning{background:var(--tint-warn);padding:12px 16px;border-radius:10px;margin:0 0 12px}.agent-status{padding:12px 16px;border-radius:10px;margin-bottom:12px}.agent-status.ok{background:var(--tint-ok)}.agent-status.bad{background:var(--danger);font-weight:600;color:var(--on-accent)}.tab.split{display:flex;gap:20px;align-items:flex-start}.shift-list{width:260px;flex-shrink:0}.shift-report{flex:1;min-width:0}.shift-report h3{margin:0 0 4px}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:16px 0}.report-grid .card{display:grid;gap:4px;padding:12px;background:var(--panel);border-radius:10px}.report-grid .card span{color:var(--muted);font-size:12px}.report-grid .card b{font-size:22px}.cost-source{display:block;font-size:11px;font-weight:400;color:var(--muted)}.cost-source.manual{color:var(--text-warn)}.cloud-link{margin-bottom:16px;padding:12px 16px;background:var(--panel);border-radius:10px}.cloud-link h3{margin:0 0 8px}.cloud-link button{margin-top:12px}.shift-bills{margin-top:20px;padding-top:16px;border-top:1px solid var(--divider)}.shift-bills h4{margin:0 0 10px}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.pager span{font-size:13px}.discrepancy{margin-top:12px;padding:12px;border-radius:10px;font-weight:600}.discrepancy.ok{background:var(--tint-ok)}.discrepancy.bad{background:var(--danger);color:var(--on-accent)}@media(max-width:900px){.tab.split{flex-direction:column}.shift-list,.shift-report{width:100%}.row-actions{justify-content:flex-start}}.items li{gap:12px;flex-wrap:wrap}.item-name{flex:1;display:grid;gap:2px;min-width:0}.qty{display:flex;align-items:center;gap:10px}.qty button{width:52px;height:52px;padding:0;font-size:26px;line-height:1;background:var(--surface)}.qty b{min-width:28px;text-align:center;font-size:20px}.qty.static{color:var(--muted)}.line-total{min-width:90px;text-align:right;font-weight:700;margin-left:auto}@media(max-width:560px){.item-name{flex-basis:100%}.line-total{min-width:0}}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,104px);gap:10px;justify-content:start}.table{aspect-ratio:1;display:grid;align-content:center;gap:1px;padding:6px;min-height:0}.table{color:var(--on-state)}.table .muted{color:var(--on-state-muted)}.table b{font-size:22px;line-height:1.1}.table small{font-size:11px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-timer{display:inline-flex;align-items:center;justify-content:center;gap:3px;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}.table-timer svg{width:13px;height:13px;flex:none}.table-booking{display:inline-flex;align-items:center;justify-content:center;gap:3px;font-size:11px;color:var(--on-state-warn)}.table-booking svg{width:11px;height:11px;flex:none}.tables-grid.pick{margin-top:8px}.state-free{background:var(--state-free);color:var(--on-state)}.state-new{background:var(--state-new);color:var(--on-state)}.state-cooking{background:var(--state-cooking);color:var(--on-state)}.state-served{background:var(--state-served);color:var(--on-state)}.table.mine{box-shadow:inset 0 0 0 3px var(--accent)}.tag.open{background:var(--state-new);color:var(--on-state)}.tag.in_progress{background:var(--state-cooking);color:var(--on-state)}.tag.served{background:var(--state-served);color:var(--on-state)}.items li.returned{opacity:.55}.items li.returned .item-name span,.items li.returned .line-total{text-decoration:line-through}.return-types{display:grid;gap:8px}.return-types button{display:grid;gap:2px;text-align:left;padding:12px;min-height:auto}.return-types button.active{background:var(--accent);border-color:var(--accent-line);color:var(--on-accent)}.return-types small{color:var(--muted);font-size:12px}.return-types button.active small{color:var(--on-accent-soft)}.quick-amounts button.active{background:var(--accent);color:var(--on-accent)}.return-qty{display:flex;align-items:center;gap:12px;padding:12px;background:var(--panel);border-radius:10px}.return-qty>span{flex:1}.paid-list{display:grid;gap:4px;padding:10px 12px;background:var(--tint-ok);border-radius:10px;color:var(--on-ok)}.paid-list .muted{color:var(--on-ok);opacity:.85}.paid-list div{display:flex;justify-content:space-between;font-size:14px}.refund-list{display:grid;gap:4px;margin-top:6px;padding:10px 12px;background:var(--tint-warn);border-radius:10px;color:var(--on-warn)}.refund-list div{display:flex;justify-content:space-between;font-size:14px}.refund-list small{opacity:.85}.refund-start{margin-top:6px;width:100%;border:1px solid var(--line)}.refund-lines{display:grid;gap:6px;margin-bottom:12px}.refund-lines>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;border-radius:10px;background:var(--panel)}.refund-lines>div.picked{background:var(--tint-warn);color:var(--on-warn)}.refund-lines small{opacity:.75}.stepper{display:flex;align-items:center;gap:10px;flex-shrink:0}.stepper button{min-width:44px;min-height:44px;font-size:20px}.stepper b{min-width:24px;text-align:center}.split-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;background:var(--panel);border-radius:10px}.split-row>span{color:var(--muted)}.split-row>b{font-size:20px;margin-left:auto}.split-buttons{display:flex;gap:6px;flex-basis:100%}.split-buttons button{flex:1;min-height:40px;font-size:13px}.split-buttons button.active{background:var(--accent);color:var(--on-accent)}.kitchen{display:flex;flex-direction:column;min-height:100vh}.kitchen-header{display:flex;align-items:center;gap:16px;padding:10px 16px;background:var(--panel)}.station-title{font-size:20px}.queue-count{margin-left:auto;color:var(--muted)}.kitchen-empty{margin:auto;padding:60px 16px;font-size:24px;color:var(--muted)}.kitchen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;padding:12px;align-items:start}.ticket{display:block;width:100%;text-align:left;background:var(--panel);border-radius:12px;padding:12px;border-left:6px solid transparent;min-height:0}.ticket-dishes{margin-top:8px;font-size:15px;line-height:1.35}.ticket .state{margin-left:auto;padding:2px 8px;border-radius:999px;background:var(--surface);font-size:11px}.ticket.cooking .state{background:var(--accent);color:var(--on-accent)}.ticket.cooking{outline:2px solid var(--accent)}.ticket header{display:flex;align-items:baseline;gap:10px}.ticket header b{font-size:22px}.ticket .waiting{margin-left:auto;font-size:20px;font-weight:700}.ticket-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}.dish-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.ticket.soon{border-left-color:var(--highlight)}.ticket.soon .waiting{color:var(--text-warn)}.ticket.late{border-left-color:var(--danger);background:var(--tint-danger-soft)}.ticket.late .waiting{color:var(--text-danger)}.dish{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:12px 10px;background:var(--surface)}.qty-badge{min-width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--bg);font-size:18px;font-weight:700}.dish-name{flex:1;display:grid;gap:2px;font-size:20px}.dish-name small{color:var(--text-warn);font-size:14px}.dish .check{padding:8px 14px;border-radius:8px;background:var(--tint-ok);color:var(--on-ok);font-size:15px;font-weight:600}.modal.kitchen-order{width:min(560px,100%)}.modal.kitchen-order .dish{padding:16px 12px}.modal.kitchen-order .qty-badge{min-width:44px;height:44px;font-size:22px}.hall-actions{display:flex;gap:8px;margin-bottom:10px}.order-comment{margin:10px 0}.settings-tab{max-width:460px;display:grid;gap:16px}.settings-tab .actions{display:flex;align-items:center;gap:12px}.list-tabs{display:flex;gap:6px;margin-bottom:12px}.list-tabs button{flex:1;min-height:40px;font-size:14px;padding:8px}.list-tabs button.active{background:var(--accent);font-weight:600;color:var(--on-accent)}.list-tabs .badge{background:#0000004d}.bars{display:grid;gap:6px;margin-bottom:20px}.bar-row{display:flex;align-items:center;gap:10px}.bar-label{width:52px;color:var(--muted);font-size:13px}.bar-track{flex:1;height:22px;background:var(--panel);border-radius:6px;overflow:hidden}.bar-fill{height:100%;background:var(--accent);border-radius:6px;color:var(--on-accent)}.bar-value{width:110px;text-align:right;font-variant-numeric:tabular-nums}.defect{color:var(--text-danger)}.grid td.defect{font-weight:600}.toolbar input[type=date]{width:auto;min-width:150px}.modifier-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.modifier-grid button{min-height:60px;flex-direction:column;gap:2px}.modifier-grid button.active{background:var(--accent);color:var(--on-accent)}.modifier-grid small{font-weight:400;opacity:.85}.toolbar.clock-in{flex-wrap:wrap;gap:8px;margin:12px 0}.toolbar.clock-in>span{margin-right:4px}.count-sheet input{width:110px;min-width:110px}.count-sheet td{padding-top:6px;padding-bottom:6px}.toolbar button.active{background:var(--accent);color:var(--on-accent)}.guests-row{display:flex;align-items:center;gap:12px;margin:10px 0;padding:10px 12px;background:var(--panel);border-radius:10px}.guests-row>span{flex:1;color:var(--muted)}.split-items{list-style:none;margin:0;padding:0;display:grid;gap:8px}.split-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:12px}.split-item.selected{background:var(--accent);color:var(--on-accent)}.split-item .mark{width:26px;height:26px;display:grid;place-items:center;border-radius:6px;background:#00000059}.split-name{flex:1;display:grid;gap:2px}.split-name small{color:var(--muted);font-size:12px}.split-item.selected .split-name small{color:var(--on-accent-soft)}.split-preview{display:grid;gap:4px;padding:10px 12px;background:var(--panel);border-radius:10px}.split-preview div{display:flex;justify-content:space-between}.split-preview span{color:var(--muted)}.order-note{margin-top:8px;padding:6px 10px;border-radius:8px;background:var(--tint-warn);color:var(--on-warn);font-size:14px}.order-note.big-note{font-size:18px;padding:12px}.category-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:6px;margin-bottom:10px}.category-tabs button{min-height:42px;padding:8px 14px;white-space:nowrap;font-size:15px}.category-tabs button.active{background:var(--accent);font-weight:600;color:var(--on-accent)}.modal.stop-list{width:min(560px,100%)}.stop-category h4{margin:12px 0 6px;color:var(--muted);font-size:14px;font-weight:400}.stop-category ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.stop-dish{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:12px}.stop-name{flex:1;display:grid;gap:2px;font-size:17px}.stop-name small{color:var(--text-warn);font-size:12px}.stop-state{font-size:13px;color:var(--text-ok)}.stop-dish.stopped{background:var(--tint-danger-soft);opacity:.75}.stop-dish.stopped .stop-state{color:var(--text-danger)}.order-tabs{display:flex;gap:6px;overflow-x:auto;margin:10px 0;padding-bottom:4px}.order-tabs button{display:grid;gap:2px;min-height:52px;padding:8px 14px;white-space:nowrap}.order-tabs button small{font-size:12px;color:var(--muted)}.order-tabs button.active{background:var(--accent);font-weight:600;color:var(--on-accent)}.order-tabs button.active small{color:var(--on-accent-soft)}.dish-thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;display:block}.dish-thumb.empty{display:grid;place-items:center;background:var(--panel);color:var(--muted)}.thumb-cell{width:56px}.image-field{display:flex;gap:12px;align-items:center}.dish-preview{width:88px;height:88px;object-fit:cover;border-radius:10px}.dish-preview.empty{display:grid;place-items:center;background:var(--panel);color:var(--muted);font-size:12px}.image-actions{display:grid;gap:8px;flex:1}.file-button{display:grid;place-items:center;min-height:44px;padding:10px 14px;border-radius:10px;background:var(--panel);cursor:pointer}.file-button input{display:none}.menu-grid button.with-photo{padding:0 0 10px;overflow:hidden}.menu-grid button.with-photo img{width:100%;height:84px;object-fit:cover;display:block;margin-bottom:6px}.stock-low{color:var(--text-warn);font-weight:600}.stock-out{color:var(--text-danger);font-weight:600}.menu-grid button.sold-out{opacity:.45}.order-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.order-head h2{margin:0;font-size:20px}.order-head .muted{font-size:14px}.order-head button:first-child{flex:none}.pane-tabs{display:flex;gap:4px;margin-bottom:12px}.pane-tabs button{flex:1}.pane-tabs button.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.rental-amount{white-space:nowrap}.order-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.order-meta .guests-row{flex:none;margin:10px 0}.order-meta .guests-row>span{flex:none}.order-meta .order-comment{flex:1;min-width:140px}.order-meta .order-comment input{width:100%}.order-foot{margin-top:16px}@media(min-width:900px){.order-body{display:grid;grid-template-columns:minmax(320px,440px) 1fr;gap:20px;align-items:start}.pane-tabs{display:none}.order-foot{position:sticky;bottom:0;padding:12px 0 4px;background:var(--bg);border-top:1px solid var(--line)}.order-pane .items{padding-bottom:8px}}@media(max-width:899px){.order-body.pane-order .menu-pane,.order-body.pane-menu .order-pane{display:none}}.device-switch{display:grid;gap:4px;justify-items:center;margin-top:28px}.device-switch>.muted{font-size:13px}.device-modes{display:flex;gap:4px;flex-wrap:wrap;justify-content:center}.device-modes button{min-height:auto;padding:5px 12px;font-size:13px;font-weight:400;background:transparent;border-color:transparent;color:var(--muted)}.device-modes button.active{background:var(--surface);border-color:var(--line);color:var(--text);font-weight:600}.device-switch small{font-size:12px}.signup-link{display:block;margin:24px auto 0;opacity:.7}.row-actions{display:flex;gap:6px;justify-content:flex-end;white-space:nowrap}.lang-switch{display:flex;gap:2px;flex:none}.lang-switch button{min-height:auto;padding:4px 10px;font-size:13px;font-weight:400;border-color:transparent;background:transparent;color:var(--muted)}.lang-switch button.active{background:var(--surface);border-color:var(--line);color:var(--text);font-weight:600}.login-top{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}.login .lang-switch{justify-content:center}.theme-toggle{min-height:auto;padding:6px;flex:none;color:var(--muted)}.theme-toggle:hover{color:var(--text)}.theme-toggle svg{width:18px;height:18px}.order-guest{margin:4px 0 12px}.guest-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.guest-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;font-weight:400}.guest-row.current{border-color:var(--ok);box-shadow:inset 3px 0 0 var(--ok)}.guest-who{display:grid;gap:1px;min-width:0}.guest-who small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-visits{display:grid;gap:1px;text-align:right;flex:none}.guest-visits b{font-size:16px;white-space:nowrap}.guest-phone,.guest-who small{white-space:nowrap}td.regular{color:var(--text-ok);font-weight:700}.block{display:block}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface)}.known-guest{margin:-4px 0 12px;padding:8px 12px;border-radius:8px;background:var(--surface);font-size:14px}.search{width:100%}a.button.export{display:inline-flex;align-items:center;gap:6px;margin-left:12px;padding:4px 8px;border:1px solid transparent;border-radius:8px;color:var(--muted);font-size:13px;font-weight:400;text-decoration:none;vertical-align:middle}a.button.export:hover{border-color:var(--line);color:var(--text)}a.button.export svg{width:14px;height:14px;flex:none}.change-up{color:var(--text-ok);font-weight:600}.change-down{color:var(--text-danger);font-weight:600}.hall-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.hall-top .bookings{flex:1;min-width:0;margin:0}.bookings{margin-bottom:16px}.bookings-head{width:100%;display:flex;align-items:center;gap:12px;justify-content:flex-start;text-align:left;font-weight:400;background:var(--panel)}.bookings-title{display:flex;align-items:center;gap:8px;font-weight:700;flex:none}.bookings-next{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookings.open .bookings-head{border-bottom-left-radius:0;border-bottom-right-radius:0}.bookings-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:8px}@media(max-width:640px){.hall-top{flex-wrap:wrap;justify-content:flex-end}.hall-top .bookings{flex-basis:100%}}.bookings-count{background:var(--ok);border-radius:999px;padding:1px 8px;font-size:13px;color:var(--on-accent)}.booking-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}.booking-list li{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--panel);border-radius:10px}.booking-list li.overdue{box-shadow:inset 0 0 0 1px var(--warn)}.booking-time{font-size:18px;font-variant-numeric:tabular-nums;flex:none}.booking-who{flex:1;display:grid;gap:1px;min-width:0}.booking-who small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-actions{display:flex;align-items:center;gap:6px;flex:none}.warn-text{color:var(--text-warn);font-weight:600}@media(max-width:640px){.booking-list li{flex-wrap:wrap}.booking-who{flex-basis:calc(100% - 70px)}.booking-actions{width:100%;flex-wrap:wrap;justify-content:flex-end}.bookings-head{flex-wrap:wrap}.bookings-head h3{flex-basis:100%}}.banner{padding:6px 12px;border-radius:8px;background:var(--tint-warn);color:var(--on-warn);font-size:13px}.banner.overdue{background:var(--tint-danger);color:var(--on-danger)}.blocked{gap:12px;text-align:center;padding:24px}.blocked h1{margin:0}.blocked-row{opacity:.65}.blocked-row td:first-child:before{content:"⏸ "}.module-line{white-space:nowrap}.warn{color:var(--text-warn)}.muted-row{opacity:.55}.grid input[type=number]{width:100px}.grid input[type=text],.grid input:not([type]){width:100%;min-width:120px}.screens a{cursor:pointer}.plan-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:12px 0}.plan-card{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:12px;background:var(--panel);border:2px solid transparent}.plan-card.current{border-color:var(--accent)}.plan-card header{display:flex;align-items:center;gap:8px}.plan-card h4{margin:0;font-size:16px}.plan-badge{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--accent);color:var(--on-accent)}.plan-price b{font-size:20px}.plan-price small{color:var(--muted)}.plan-limits{margin:0;display:grid;gap:8px}.plan-limits div{display:grid;gap:2px}.plan-limits dt{font-size:12px;color:var(--muted)}.plan-limits dd{margin:0;display:flex;align-items:baseline;gap:8px}.plan-usage{font-size:12px;color:var(--muted)}.plan-usage.tight{color:var(--text-warn)}.plan-modules{grid-column:1 / -1;padding:14px;border-radius:12px;background:var(--panel)}.plan-modules h4{margin:0 0 8px;font-size:14px}.plan-modules ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.plan-modules li{display:flex;align-items:center;gap:10px;opacity:.6}.plan-modules li.on{opacity:1}.plan-modules .mark{width:14px;color:var(--accent)}.plan-modules .name{flex:1;display:grid}.plan-modules .name small{color:var(--muted)}.modal.wide{width:min(880px,100%)}.module-offer{max-width:520px;padding:20px;border-radius:12px;background:var(--panel);display:grid;gap:8px}.module-offer h3{margin:0}.recipe{display:grid;gap:6px}.recipe-line{display:flex;align-items:center;gap:8px}.recipe-line .name{flex:1}.recipe-line input{width:110px}.recipe-line .unit{color:var(--muted);width:28px}.stock-list{display:grid;gap:8px}.stock-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:var(--panel)}.stock-name{flex:1;display:grid;gap:2px}.stock-name span{font-size:13px}.stock-actions{display:flex;gap:6px}.stock-actions button{min-height:44px}.renew-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}.renew-row input[type=number]{width:80px}.renew-row .spacer{flex:1}.confirm-line{display:flex;align-items:center;gap:8px;font-size:14px}.warning p{margin:6px 0 0;font-size:14px}.notice{background:var(--tint-accent);padding:12px 16px;border-radius:10px;margin:0 0 12px}.notice p{margin:6px 0 0;font-size:14px}.rental{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:12px 0;border-radius:12px;background:var(--panel);border:2px solid transparent}.rental.running{border-color:var(--highlight)}.rental-info{display:grid}.rental-info b{font-size:22px;font-variant-numeric:tabular-nums}.rental-info span{font-size:12px}.rental-amount{flex:1;text-align:right;font-size:20px;font-weight:700}.method-tabs button:not(.active),.category-tabs button:not(.active),.order-tabs button:not(.active),.list-tabs button:not(.active),.split-buttons button:not(.active),.quick-amounts button:not(.active){background:transparent;font-weight:400}
