.customer-page{min-height:100dvh;padding:0 16px;background:var(--bg)}.customer-head{display:flex;align-items:center;justify-content:space-between;width:min(100%,520px);height:60px;margin:0 auto}.customer-brand{font-size:18px;font-weight:600}.customer-staff,.booking-find{min-height:44px;padding:0 12px;border:0;background:transparent;color:var(--ink-2);font-size:14px;text-decoration:underline;text-underline-offset:3px}.booking-card{display:grid;gap:20px;width:min(100%,520px);margin:16px auto 0}.booking-card h1{font-size:28px;line-height:1.15}.booking-summary,.booking-quote{margin:0;padding:8px 0 12px;border-bottom:1px solid var(--line);color:var(--ink-2);font-size:14px;font-weight:500}.booking-hint{margin:8px 0 0;color:var(--ink-2);font-size:14px}.booking-card h1:focus{outline:none}.booking-question-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.booking-question-head h1{flex:1}.booking-food,.booking-form{display:grid;gap:12px}.booking-form label{display:grid;gap:8px;font-size:14px;font-weight:600}.booking-form input{width:100%;min-height:52px}.booking-choice{display:grid;align-content:center;gap:4px;min-height:64px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-2);background:var(--bg);color:var(--ink);font-size:18px;font-weight:600;text-align:left;transition:background-color var(--t) var(--ease),border-color var(--t) var(--ease)}.booking-choice[aria-pressed=true]{border-color:var(--primary);background:var(--surface)}.booking-choice:disabled{background:var(--surface);color:var(--ink-3);cursor:not-allowed}.booking-location small{color:var(--ink-3);font-size:14px;font-weight:500}.booking-dish{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;border-bottom:1px solid var(--line)}.booking-dish>div:first-child{display:grid;gap:3px}.booking-dish strong{font-size:16px}.booking-dish small{color:var(--ink-2);font-size:13px}.booking-dish.dim{color:var(--ink-3)}.booking-stepper{display:flex;align-items:center;gap:12px}.booking-stepper button{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink)}.booking-stepper button:disabled{color:var(--ink-3)}.booking-stepper svg{width:18px;height:18px}.booking-stepper b{min-width:20px;text-align:center}.booking-form .button{margin-top:8px}.booking-honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.booking-review-list{display:grid;gap:0;margin:0}.booking-review-list div{display:flex;justify-content:space-between;gap:16px;min-height:48px;padding:12px 0;border-bottom:1px solid var(--line)}.booking-review-list dt{color:var(--ink-2)}.booking-review-list dd{max-width:65%;margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}.booking-limit-error{padding:12px;border-radius:var(--r-1);background:var(--danger-soft);color:var(--danger)}.booking-reference{padding:16px;border-radius:var(--r-2);background:var(--surface);font-size:24px;letter-spacing:.04em;text-align:center}.booking-confirmed>p{color:var(--ink-2)}.booking-confirmed .button{width:100%}.lookup-card{gap:16px}.booking-found{display:grid;gap:8px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.booking-found>strong{font-size:18px}.booking-found p{color:var(--ink-2)}@media(min-width:700px){.customer-page{padding-top:8px}.booking-card{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:var(--r-3)}}.booking-page{gap:24px}.booking-section{display:grid;gap:12px;min-width:0;margin:0;padding:0 0 24px;border:0;border-bottom:1px solid var(--line)}.booking-section legend{float:left;width:100%;margin-bottom:12px;padding:0;font-size:18px;font-weight:600}.booking-optional{margin-left:4px;color:var(--ink-3);font-size:14px;font-weight:400}.booking-when{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-field-day{grid-column:1 / -1}.booking-field{display:grid;gap:8px;font-size:14px;font-weight:500}.booking-halls{display:grid;gap:8px}.booking-halls .booking-choice{min-height:56px;font-size:16px}.booking-section .button.quiet{width:100%}.booking-submit{position:sticky;bottom:0;display:grid;gap:8px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}.booking-submit .booking-summary,.booking-submit .booking-quote{padding:0;border:0}@media(min-width:700px){.booking-when{grid-template-columns:1.2fr 1fr 1fr}.booking-field-day{grid-column:auto}.booking-halls{grid-template-columns:repeat(3,1fr)}.booking-submit{margin:0 -24px -24px;padding:16px 24px;border-radius:0 0 var(--r-3) var(--r-3)}}html:has(.booking-page){scroll-padding-bottom:120px}.booking-choice[aria-disabled=true]{background:var(--surface);color:var(--ink-3);cursor:not-allowed}.booking-field-note{color:var(--ink-2);font-size:13px;font-weight:400}@media(min-width:700px){.booking-page{width:min(100%,640px)}}.booking-hall-notes{display:grid;gap:2px}.booking-field-error,.booking-needed{color:var(--danger);font-size:14px;font-weight:500}.booking-needed{margin:0}.booking-copy-note{margin:0;font-size:14px}.booking-form textarea{width:100%;min-height:88px;font:inherit;resize:vertical}.booking-form input[type=tel]{min-height:52px}.booking-hall{display:grid;gap:8px;align-content:start}.booking-dates{display:grid;gap:4px;margin:8px 0 0;padding-left:20px;font-size:14px}.booking-quote small{display:block;color:var(--ink-2);font-weight:400}.intake{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;width:min(100%,1040px);margin:0 auto}.intake-index{display:none}.intake-form{display:grid;gap:16px;min-width:0;max-width:760px}.intake-form h1{font-size:28px;line-height:1.15}.intake-card{display:grid;gap:12px;padding:20px;border:1px solid var(--line);border-radius:var(--r-3);background:var(--bg);scroll-margin-top:16px}.intake-card h2{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600}.intake-card h3{margin-top:8px;font-size:15px;font-weight:600}.intake-num{display:inline-grid;flex:none;place-items:center;width:28px;height:28px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink);font-size:13px;font-weight:600}.intake label{display:grid;gap:8px;font-size:14px;font-weight:500}.intake label input:not([type=checkbox]),.intake label select,.intake label textarea{width:100%;min-height:44px}.intake label textarea{font:inherit;resize:vertical}.intake-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.intake-grid.four{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.intake-wide{grid-column:1 / -1}.intake-narrow{max-width:240px}.intake .seg{flex-wrap:wrap}.intake .seg button{min-height:44px}.intake-checklist{display:grid;gap:4px;margin:0;padding:12px 16px;border:0;border-radius:var(--r-2);background:var(--surface)}.intake-checklist legend{float:left;width:100%;margin-bottom:8px;padding:0;font-size:14px;font-weight:600}.intake-checklist small,.intake-note{color:var(--ink-2);font-size:13px;font-weight:400}.intake label.intake-check{display:flex;align-items:center;gap:10px;min-height:44px}.intake-check input{width:20px;height:20px;min-height:0;flex:none}.intake-hall{margin:0;padding:12px 16px;border-radius:var(--r-2);background:var(--accent-soft)}.intake-hall span{color:var(--ink-2)}.intake-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid var(--line)}.intake-row small{color:var(--ink-2)}.intake-stepper-value{min-width:56px;text-align:center;white-space:nowrap}.intake-repeat{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.intake-repeat label{min-width:180px}.intake-repeat .button{width:auto}.intake-meal{display:grid;gap:8px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-2)}.intake-meal[data-on=true]{border-color:var(--primary)}.intake-meal-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.intake .intake-inline{display:flex;align-items:center;gap:8px}.intake .intake-inline select{width:auto}.intake-dish{display:flex;align-items:center;gap:12px;min-height:64px;border-bottom:1px solid var(--line)}.intake-dish strong{flex:1;font-size:16px}.intake-dish img,.intake-tile{flex:none;width:40px;height:40px;border-radius:var(--r-1);object-fit:cover}.intake-tile{display:grid;place-items:center;background:var(--surface-2);color:var(--ink-2);font-size:20px;font-weight:600}.intake-meals{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.intake-guidance{margin:0;padding:10px 12px;border-radius:var(--r-1);background:var(--accent-soft);font-size:14px}.intake-total{color:var(--ink-2);font-weight:600}.intake-fixes,.intake-flagrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.intake-fixes .button,.intake-flagrow .button{width:auto}.intake-dish{flex-wrap:wrap}.intake-dish strong{min-width:100px}.intake-dish-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.intake-quick{min-width:44px;min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg);color:var(--ink);font:inherit;font-size:14px}.intake-quick[aria-pressed=true]{border-color:var(--primary);background:var(--accent-soft);font-weight:600}@media(min-width:900px){.intake-meals{grid-template-columns:repeat(2,minmax(0,1fr))}}.intake-meal-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.intake-meal-actions .button{width:auto}.intake-flags{display:grid;gap:6px;margin:0;padding:0;list-style:none}.intake-flag{margin:0;padding:10px 12px;border-radius:var(--r-1);font-size:14px}.intake-flag.red{background:var(--danger-soft);color:var(--danger)}.intake-flag.amber{background:var(--warn-soft);color:var(--warn-ink)}.intake-tag{margin-right:8px;padding:2px 8px;border-radius:var(--r-pill);background:var(--ink);color:var(--bg);font-size:12px;font-weight:600}.intake-link{min-height:44px;margin-left:8px;border:0;background:transparent;color:var(--ink-2);text-decoration:underline}.intake-save{position:sticky;bottom:0;display:grid;gap:8px;padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}.intake-live{display:grid;gap:6px;max-height:30vh;overflow-y:auto}.intake-save .button{justify-self:start}@media(min-width:1000px){.intake{grid-template-columns:200px minmax(0,1fr);align-items:start}.intake-index{position:sticky;top:16px;display:grid;gap:2px}.intake-index button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 8px;border:0;border-radius:var(--r-1);background:transparent;color:var(--ink-2);font-size:14px;text-align:left}.intake-index button:hover{background:var(--surface);color:var(--ink)}}@media(max-width:899px){.intake-save{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:12px}}.booking-intake{display:grid;gap:12px;margin:8px 0;padding:12px 16px;border-radius:var(--r-2);background:var(--surface)}.booking-intake dl{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;margin:0;font-size:14px}.booking-intake dt{color:var(--ink-3)}.booking-intake dd{margin:0}.intake-flags{display:grid;gap:4px;margin:0;padding:0;list-style:none;font-size:14px}.booking-staff-list .intake-flags li{padding:8px 12px;text-align:left;border-radius:var(--r-1)}.intake-flags .red{background:var(--danger-soft);color:var(--danger)}.intake-flags .amber{background:var(--warn-soft);color:var(--ink)}.intake-meal h4{margin:0 0 4px;font-size:16px}.intake-meal h4 small{color:var(--ink-3);font-size:14px;font-weight:400}.intake-meal ul{margin:0;padding:0;list-style:none;font-size:14px}.intake-feedback{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:8px 0 0;padding:0;border:0;font-size:14px}.intake-feedback legend{float:left;margin-right:16px;padding:0;font-weight:600}.intake-feedback input:not([type=radio]){flex:1 1 160px;width:auto}.booking-edit-details{justify-self:start}.booking-staff-list .booking-intake li{display:block;min-height:0;border:0}.booking-intake .intake-meal{padding:0;border:0;background:none}.booking-staff-list .booking-intake .intake-meal li{padding:4px 0}.food{display:grid;gap:16px;align-content:start}.food .page-head{padding-bottom:0}.food-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.food ul{margin:0;padding:0;list-style:none}.food-order,.food-kitchen,.food-manage{display:grid;gap:16px;align-content:start}.food .chips{display:flex;gap:8px;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none}.food .chips::-webkit-scrollbar{display:none}.food .chips button,.food-seg button{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 16px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:500}.food .chips button:hover,.food-seg button:hover{background:var(--surface-2)}.food .chips button[aria-pressed=true],.food-seg button[aria-pressed=true],.food-chips button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.food-seg{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}.food-taken{padding:2px 8px;border-radius:var(--r-pill);background:var(--warn-soft);color:var(--warn-ink);font-size:12px;font-weight:600}.food-days{display:flex;gap:8px;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none}.food-days button{flex:none;display:grid;justify-items:center;gap:2px;width:56px;min-height:64px;padding:8px 0;border:0;border-radius:var(--r-2);background:var(--surface);color:var(--ink);font-size:12px;font-weight:500;transition:background-color var(--t) var(--ease)}.food-days button b{font-size:20px;font-weight:600}.food-days button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.food-block{display:grid;gap:4px;padding:12px 16px;border-radius:var(--r-2);background:var(--danger-soft);color:var(--danger);font-size:16px;font-weight:600}.food-issue{display:grid;gap:4px;padding:12px;border-radius:var(--r-1);background:var(--danger-soft);color:var(--danger);font-size:14px;font-weight:500}.food-where-line{color:var(--ink-2);font-size:16px;font-weight:600}.food-toolbar{display:grid;gap:12px}.food-search{display:flex;align-items:center;gap:12px;min-height:48px;padding:0 16px;border-radius:var(--r-pill);background:var(--surface)}.food-search svg{flex:none;width:20px;height:20px;color:var(--ink-3)}.food-search input:not([type=checkbox]):not([type=radio]){min-height:0;padding:0;border:0;border-radius:0;background:transparent}.food-search input:focus{outline:none}.food-for{max-width:360px}.food-menu>li,.food-orders>li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}.food-menu>li.dim .food-dish>strong{color:var(--ink-2)}.food-menu>li.dim .food-meta{color:var(--ink-2)}.food-dish{display:grid;flex:1;gap:4px;min-width:0}.food-dish>strong{font-size:16px;font-weight:600}.food-meta{display:flex;flex-wrap:wrap;gap:4px 8px;color:var(--ink-2);font-size:14px}.food-pill{padding:0 8px;border-radius:var(--r-pill);background:var(--surface);font-size:12px;font-weight:500}.food-reason{color:var(--danger);font-size:14px;font-weight:500}.food-row-actions{display:flex;flex-wrap:wrap;gap:8px}.button.food-small{min-height:36px;padding:0 14px;border-radius:var(--r-pill);font-size:14px}.food-add,.food-step button{display:inline-grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);transition:background-color var(--t) var(--ease)}.food-add:hover,.food-step button:hover{background:var(--surface-2)}.food-add:disabled,.food-step button:disabled{color:var(--ink-3);cursor:not-allowed}.food-add svg,.food-step svg{width:20px;height:20px}.food-step{display:inline-flex;flex:none;align-items:center;gap:4px;border-radius:var(--r-pill);background:var(--surface)}.food-step b{min-width:24px;text-align:center;font-size:16px;font-weight:600}.food-basket{position:sticky;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 8px);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 16px;border:0;border-radius:var(--r-1);background:var(--ink);color:var(--bg);box-shadow:var(--sh-float);font-size:16px;font-weight:600}.food-basket-count{display:inline-grid;place-items:center;min-width:28px;height:28px;border-radius:var(--r-pill);background:var(--bg);color:var(--ink);font-size:14px;font-weight:600}.food-sheet{max-width:520px}.food-form{display:grid;gap:16px}.food-field{display:grid;gap:8px}.food-label{font-size:14px;font-weight:600}.food-form .chips{flex-wrap:wrap;margin:0;padding:0}.food-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.food-lines{display:grid;gap:12px}.food-lines>li{display:grid;gap:8px}.food-line-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.food-order-side{display:grid;justify-items:end;gap:8px}.food-status{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;border-radius:var(--r-pill);background:var(--surface);color:var(--ink-2);font-size:12px;font-weight:600;text-transform:capitalize}.food-status.new{background:var(--info-soft);color:var(--info)}.food-status.preparing{background:var(--warn-soft);color:var(--warn-ink)}.food-status.ready,.food-status.served{background:var(--accent-soft);color:var(--accent-ink)}.food-status.cancelled{background:var(--danger-soft);color:var(--danger)}.food-board{display:grid;gap:24px}.food-col{display:none;gap:12px;align-content:start}.food-col.on{display:grid}.food-col h3{display:flex;gap:8px;font-size:20px}.food-col h3 span,.food-none{color:var(--ink-3)}.food-ticket{display:grid;gap:8px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.food-ticket>header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.food-when{flex:none;white-space:nowrap;font-size:24px;font-weight:600;letter-spacing:-.03em}.food-where{font-size:16px;text-align:right;font-weight:600}.food-person{font-size:16px;font-weight:600}.food-flag{padding:4px 8px;border-radius:var(--r-1);background:var(--info-soft);color:var(--info);font-size:14px;font-weight:500}.food-flag.warn{background:var(--danger-soft);color:var(--danger)}.food-note{color:var(--ink-2)}.food-ticket-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.food-manage-bar{display:flex;justify-content:flex-end}.food-switch{position:relative;flex:none;width:52px;height:32px;padding:0;border:0;border-radius:var(--r-pill);background:var(--surface-2);transition:background-color var(--t) var(--ease)}.food-switch span{position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:var(--r-pill);background:var(--bg);transition:transform var(--t) var(--ease)}.food-switch[aria-checked=true]{background:var(--ink)}.food-switch[aria-checked=true] span{transform:translate(20px)}@media(min-width:900px){.food-order,.food-manage{max-width:640px;margin:0 auto;width:100%}.food-kitchen .food-seg{display:none}.food-board{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.food-col{display:grid}.food-basket{bottom:16px}}.booking-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 20px}.booking-filters label{display:grid;gap:6px;font-weight:600}.booking-filters input,.booking-filters select{min-height:48px}.booking-staff-list{margin:0;padding:0;list-style:none}.booking-staff-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:96px;padding:16px 0;border-bottom:1px solid var(--line)}.booking-staff-main{display:grid;gap:4px;min-width:0}.booking-staff-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.booking-staff-title strong{font-size:16px}.booking-staff-main p{color:var(--ink-2);overflow-wrap:anywhere}.booking-staff-main a{color:inherit;text-decoration:underline;text-underline-offset:3px}@media(max-width:520px){.booking-filters{grid-template-columns:1fr}}.food-prep{display:grid;gap:8px;margin:16px 0;padding:16px;border-radius:var(--r-2);background:var(--surface)}.food-prep header{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-prep h3{font-size:20px;letter-spacing:-.02em}.food-prep .button{min-height:40px;background:var(--bg)}.food-prep ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px 24px;margin:0;padding:0;list-style:none}.food-prep li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line);font-size:16px}@media print{.shell aside,.bottom-nav,.food-days,.food-kitchen-tabs,.food-board,.food-prep .button{display:none!important}.shell{display:block}}.booking-daynav{display:flex;gap:8px;margin:8px 0}.booking-daynav .button{min-height:40px}.booking-daytitle{margin:8px 0 0;font-size:20px;letter-spacing:-.02em}.booking-sum{margin:4px 0 12px;color:var(--ink-2);font-size:14px}.booking-confirm{display:grid;gap:8px}.booking-notes{display:grid;gap:8px;margin-top:8px}.booking-notes label{display:grid;gap:4px;font-weight:600}.booking-notes textarea{width:100%;font:inherit}.booking-notes .button{justify-self:start}@media(max-width:520px){.booking-staff-list li{flex-direction:column;align-items:stretch}}.status.pending{background:var(--warn-soft);color:var(--warn-ink)}.food-form label.food-check{display:flex;align-items:center;gap:8px}.week-grid{display:grid;grid-template-columns:120px repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);overflow-x:auto}.week-row{display:contents}.week-head,.week-hall,.week-cell{background:var(--surface);padding:6px;min-width:0}.week-head{font-weight:700;font-size:13px}.week-hall{font-weight:600;font-size:13px}.week-cell{display:grid;gap:4px;align-content:start;min-height:56px}.week-block{display:grid;gap:2px;text-align:left;font:inherit;font-size:12px;padding:4px 6px;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--r-1);background:var(--accent-soft);color:var(--ink);cursor:pointer}.week-block small{color:var(--ink-2)}.week-block.pending{border-left-color:var(--warn-ink);border-style:dashed;background:var(--warn-soft)}.week-block.new,.week-block.preparing{border-left-color:var(--info);background:var(--info-soft)}.week-block.cancelled{border-left-color:var(--danger);background:var(--danger-soft);text-decoration:line-through;opacity:.7}.week-days{display:none}@media(max-width:800px){.week-grid{display:none}.week-days{display:grid;gap:12px}.week-days h4{margin:0 0 4px}.week-days>div{display:grid;gap:4px}}.run-sheet{display:none}@media print{.run-sheet{display:block;width:100%;color:var(--ink)}.shell{display:block!important}.shell main{max-width:none;padding:0}.run-sheet h2,.run-sheet h3{margin:12px 0 4px}.run-sheet ul{list-style:none;margin:0;padding:0}.run-sheet li{padding:6px 0;border-bottom:1px solid var(--ink-3);break-inside:avoid;font-size:13px}.run-sheet p{margin:2px 0}.booking-staff>:not(.run-sheet),.subtabs{display:none!important}}.week-dot{display:inline-block;width:8px;height:8px;margin-left:6px;border-radius:var(--r-pill);background:var(--danger)}.week-cleanup{font-size:11px;color:var(--ink-2);padding:2px 6px;border:1px dashed var(--line);border-radius:var(--r-1);background:var(--surface)}.week-cell.blocked{background:var(--surface-2)}.week-reason{margin:0;font-size:11px;font-weight:600;color:var(--ink-2)}.donation-form{display:grid;gap:16px}.donation-filters{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.donation-list{margin:0;padding:0;list-style:none}.donation-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.donation-list small{display:block;color:var(--ink-3);font-size:14px}.donation-list .voided strong{text-decoration:line-through}.donation-main{flex:1;min-width:0}.donation-actions{display:flex;gap:8px}.donation-hint{color:var(--ink-3);font-size:14px}.receipt{display:grid;gap:8px;padding:8px 0}.receipt h3,.receipt p{margin:0}.receipt-void{color:var(--danger);font-weight:700}.receipt-total{font-size:22px;font-weight:700}@media print{body:has(.receipt-print) *{visibility:hidden}.receipt-print,.receipt-print *{visibility:visible}.receipt-print{position:absolute;inset:0 auto auto 0;width:100%;background:var(--bg)}.receipt-print .icon-button,.receipt-print .button{display:none!important}}.shift-list{margin:0;padding:0;list-style:none}.shift-list li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.shift-main{flex:1;display:grid;gap:2px;min-width:0}.shift-main small{color:var(--ink-3);font-size:14px}.shift-actions{display:flex;gap:8px}.shift-form{display:grid;gap:16px}@media(max-width:640px){.shift-list li{flex-direction:column;align-items:stretch}}.ops-home{display:grid;gap:24px;padding:24px 0 8px}.ops-home__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ops-home__date{color:var(--ink-3);font-size:14px;font-weight:500}.ops-home__head h2{margin-top:4px;font-size:28px;line-height:1.14;letter-spacing:-.03em}.ops-home__head .icon-button{flex:none}.ops-home__search{position:relative;display:block}.ops-home__search svg{position:absolute;left:16px;top:50%;translate:0 -50%;color:var(--ink);pointer-events:none}.ops-home .ops-home__search input[type=search]{min-height:48px;padding-left:48px;border-radius:var(--r-pill)}.ops-home__totals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.ops-home__totals div{display:grid;gap:4px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.ops-home__totals dd{grid-row:1;margin:0;font-size:32px;font-weight:600;line-height:1.1;letter-spacing:-.035em}.ops-home__totals dt{color:var(--ink-2);font-size:14px}.ops-home__flow{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0;color:var(--ink-2);font-size:14px}.ops-home__flow b{color:var(--ink)}.ops-home__section{display:grid;gap:12px}.ops-home__section>header{display:flex;align-items:baseline;justify-content:space-between}.ops-home__section h3{font-size:20px;letter-spacing:-.02em}.ops-home__link{padding:0;border:0;background:none;color:var(--ink);font-size:14px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.ops-home__empty{margin:0;color:var(--ink-2)}.ops-home__cook{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0 24px;margin:0;padding:0;list-style:none}.ops-home__cook li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.ops-home__rows{margin:0;padding:0;list-style:none}.ops-home__rows li{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 0;border-bottom:1px solid var(--line)}.ops-home__rows time{font-size:14px;font-weight:600}.ops-home__rows div{display:grid;min-width:0}.ops-home__rows strong{font-size:16px;font-weight:600}.ops-home__rows small{color:var(--ink-2);font-size:14px}.ops-home__dot{width:10px;height:10px;border-radius:var(--r-pill);background:var(--accent)}.ops-home__pending{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:12px 16px;border-radius:var(--r-2);background:var(--warn-soft);color:var(--warn-ink)}.ops-home__shifts{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;margin:0 0 12px}.ops-home__alerts h4{margin:0 0 4px;color:var(--ink-2);font-size:14px}.ops-home__alerts ul{margin:0;padding:0;list-style:none}.ops-home__alerts li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:4px;padding:10px 12px;border-radius:var(--r-1);background:var(--warn-soft)}.ops-home__alerts li.red{background:var(--danger-soft)}.ops-home__alerts li div{display:grid;min-width:0}.ops-home__alerts small{color:var(--ink-2)}.ops-home__alert-tag{font-size:12px;font-weight:700;color:var(--warn-ink)}.red .ops-home__alert-tag{color:var(--danger)}.ops-home__cook b{white-space:nowrap}.people-directory{display:grid;gap:16px;padding-bottom:8px}.people-directory__heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:24px}.people-directory__heading h2{font-size:28px;line-height:1.14;letter-spacing:-.03em}.people-directory__heading .button{min-height:40px;padding:0 16px;border-radius:var(--r-pill);font-size:14px}.people-directory__notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:var(--r-1);background:var(--accent-soft);color:var(--accent-ink);font-weight:500}.people-directory__notice button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:var(--r-pill);background:none;color:inherit}.people-directory__tools{display:grid;gap:12px}.people-directory__search{position:relative;display:block}.people-directory__search svg{position:absolute;left:16px;top:50%;translate:0 -50%;pointer-events:none}.people-directory .people-directory__search input:not([type=checkbox]){min-height:48px;padding-left:48px;border-radius:var(--r-pill)}.people-directory__sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.people-directory__filters{display:flex;gap:8px;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter);overflow-x:auto;scrollbar-width:none}.people-directory__filters::-webkit-scrollbar{display:none}.people-directory__filters button{flex:none;min-height:36px;padding:0 16px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:500;transition:background-color var(--t) var(--ease)}.people-directory__filters button:hover{background:var(--surface-2)}.people-directory__filters button.is-active{background:var(--ink);color:var(--bg)}.people-directory__list{display:grid}.people-directory__row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:12px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--ink);text-align:left;transition:background-color var(--t) var(--ease)}.people-directory__row:active{background:var(--surface)}.people-directory__identity{display:flex;align-items:center;gap:12px;min-width:0}.people-directory__identity>span:last-child{display:grid;min-width:0}.people-directory__identity strong{font-size:16px;font-weight:600}.people-directory__identity small{overflow:hidden;color:var(--ink-2);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.people-directory__avatar{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600}.people-directory__chevron{color:var(--ink-3)}.people-directory__record{display:grid;gap:16px}.people-directory__record dl{display:grid;margin:0}.people-directory__record dl>div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.people-directory__record dt{color:var(--ink-2)}.people-directory__record dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}.people-directory__form,.people-directory__form-grid{display:grid;gap:16px}.people-directory__form-error{padding:12px 16px;border-radius:var(--r-1);background:var(--danger-soft);color:var(--danger);font-weight:500}@media(min-width:900px){.people-directory__filters{margin:0;padding:0}.people-directory__form-grid{grid-template-columns:1fr 1fr}}.people-directory__form footer{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px}.limit-group{display:grid;gap:4px}.limit-group h3{font-size:20px}.limit-group ul{margin:0;padding:0;list-style:none}.limit-group li{display:flex;align-items:center;gap:12px;min-height:72px;border-bottom:1px solid var(--line)}.limit-text{flex:1;display:grid;gap:2px;min-width:0;padding:12px 0;border:0;background:none;color:var(--ink);text-align:left}.limit-text strong{font-size:16px;font-weight:600}.limit-text small{color:var(--ink-3);font-size:14px}.limit-group li.off .limit-text strong{color:var(--ink-3);text-decoration:line-through}.switch{position:relative;flex:none;width:52px;height:32px;padding:0;border:0;border-radius:var(--r-pill);background:var(--surface-2);transition:background-color var(--t) var(--ease)}.switch:after{content:"";position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:var(--r-pill);background:var(--bg);transition:transform var(--t) var(--ease)}.switch[aria-checked=true]{background:var(--ink)}.switch[aria-checked=true]:after{transform:translate(20px)}.limit-form{display:grid;gap:16px}.limit-kinds{display:grid;gap:8px}.limit-kinds button{min-height:48px;padding:0 16px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:500;text-align:left;transition:background-color var(--t) var(--ease)}.limit-kinds button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.limit-times{display:grid;grid-template-columns:1fr 1fr;gap:12px}.limit-day-types{margin:0;padding:0;list-style:none}.limit-day-types li,.limit-value-row{display:flex;align-items:center;gap:8px;min-height:56px;padding:8px 0;border-bottom:1px solid var(--line)}.limit-day-types li>input{flex:1;min-width:80px}.limit-day-types .button{min-height:40px;padding:0 10px}.limit-add-type,.limit-add-type label,.limit-overall{display:grid;gap:8px}.limit-add-type{grid-template-columns:1fr auto;align-items:end;margin-top:12px}.limit-type-select{display:grid;gap:8px;max-width:320px;font-weight:600}.limit-type-select select{min-height:48px}.limit-help{margin:0 0 4px;color:var(--ink-2)}.limit-value-row>span{flex:1}.limit-value-row label{display:flex;align-items:center;gap:8px}.limit-value-row input,.limit-overall input{width:112px;min-height:44px}.limit-value-row small{color:var(--ink-3)}.limit-overall{max-width:240px;font-weight:600}.limit-dish-head,.limit-group .limit-dish-row{display:grid;grid-template-columns:minmax(0,1fr) 128px 128px;align-items:center;gap:8px}.limit-dish-head{color:var(--ink-3);font-size:14px;font-weight:600}.limit-group .limit-dish-row{min-height:56px;padding:8px 0}.limit-dish-row input{width:100%;min-height:44px}.limit-rule-head,.limit-group .limit-rule{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(6,minmax(0,1fr)) minmax(0,1.2fr);align-items:center;gap:8px}.limit-rule-head.no-money,.limit-group .limit-rule.no-money{grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr)) minmax(0,1.2fr)}.limit-rule-head{color:var(--ink-3);font-size:14px;font-weight:600}.limit-group .limit-rule{min-height:56px;padding:8px 0}.limit-rule label{display:grid;gap:4px;min-width:0}.limit-rule input:not([type=checkbox]){width:100%;min-width:0;min-height:44px}.limit-rule .limit-check{display:flex;align-items:center;gap:8px}@media(max-width:719px){.limit-rule-head{display:none}.limit-group .limit-rule{grid-template-columns:1fr;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px}.limit-rule .sr-only{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto;white-space:normal}}.limit-group li.limit-block-row{flex-wrap:wrap;min-height:0;padding:8px 0}.limit-block-row select,.limit-block-row input{flex:1 1 140px;width:auto}.limit-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.team-list{margin:0;padding:0;list-style:none}.team-list li{border-bottom:1px solid var(--line)}.team-list button{display:flex;align-items:center;gap:12px;width:100%;min-height:72px;padding:12px 0;border:0;background:none;color:var(--ink);text-align:left}.team-list svg{flex:none;width:20px;height:20px;color:var(--ink-3)}.team-text{flex:1;display:grid;min-width:0}.team-text strong{font-size:16px;font-weight:600}.team-text small{overflow:hidden;color:var(--ink-3);font-size:14px;text-overflow:ellipsis}.team-sheet,.team-form{display:grid;gap:16px}.team-locked{padding:12px 16px;border-radius:var(--r-1);background:var(--surface);font-weight:600}.team-sheet .record{margin:0}.live-stamp{display:inline-flex;align-items:center;gap:8px;min-height:32px;color:var(--ink-3);font-size:12px;font-weight:500;white-space:nowrap}.live-stamp i{width:8px;height:8px;border-radius:var(--r-pill);background:var(--accent)}.live-grid{display:grid;gap:24px}.live-totals{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}.live-totals li{display:grid;gap:4px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.live-totals b{font-size:32px;line-height:1.1;font-weight:600;letter-spacing:-.035em}.live-totals span{color:var(--ink-2);font-size:14px;font-weight:500}.live-block{display:grid;gap:12px;align-content:start}.live-block h3{font-size:20px;letter-spacing:-.02em}.live-stack{display:flex;height:24px;padding:0;overflow:hidden;border:0;border-radius:var(--r-pill);background:var(--surface-2)}.live-stack i{display:block;height:100%}.st-new{background:var(--warn)}.st-preparing{background:var(--info)}.st-ready{background:var(--accent)}.st-served{background:var(--ink)}.st-cancelled{background:var(--danger)}.live-legend,.live-rows,.live-bars{margin:0;padding:0;list-style:none}.live-legend li{display:flex;align-items:center;gap:12px;min-height:44px;border-bottom:1px solid var(--line)}.live-legend i{flex:none;width:10px;height:10px;border-radius:var(--r-pill)}.live-legend span{flex:1}.live-rows li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;border-bottom:1px solid var(--line)}.live-rows li>span{display:grid}.live-rows small,.live-bars small{color:var(--ink-3);font-size:12px}.live-rows li.live-empty,p.live-empty{color:var(--ink-3)}.live-bars li{display:grid;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}.live-bars li>div{display:flex;justify-content:space-between;gap:12px}.live-track{display:block;height:8px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface)}.live-track i{display:block;height:100%;border-radius:var(--r-pill);background:var(--ink)}.live-hours{display:flex;align-items:stretch;gap:3px;height:140px}.live-hour{flex:1;display:grid;grid-template-rows:14px 1fr 14px;justify-items:center;min-width:0}.live-hour i{align-self:end;width:100%;min-height:2px;border-radius:4px 4px 0 0;background:var(--surface-2)}.live-hour i.on{background:var(--ink)}.live-hour small,.live-hour-value{color:var(--ink-3);font-size:10px;font-weight:500;line-height:14px;letter-spacing:0}@media(min-width:900px){.live-grid{grid-template-columns:1fr 1fr}.live-totals{grid-column:1 / -1;grid-template-columns:repeat(4,1fr)}.live-wide{grid-column:1 / -1}}.export-heading{font-size:20px}.export-quick{display:flex;flex-wrap:wrap;gap:8px}.export-quick button{min-height:40px;padding:0 16px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;transition:background-color var(--t) var(--ease)}.export-quick button:hover{background:var(--surface-2)}.export-kinds{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.export-kinds button{min-height:44px;padding:0 20px;border:0;border-radius:var(--r-pill);background:var(--surface);color:var(--ink);font-size:14px;font-weight:500;transition:background-color var(--t) var(--ease)}.export-kinds button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.export-fixed{display:flex;align-items:center;min-height:48px;padding:0 16px;border-radius:var(--r-pill);background:var(--surface);font-weight:600}.export-dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.export-dates input{min-width:0}.money-month{min-height:36px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-2);background:var(--bg);color:var(--ink);font:inherit}.money-grid{display:grid;gap:24px}.money-totals{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:0;padding:0;list-style:none}.money-totals li{display:grid;gap:4px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.money-totals b{font-size:28px;line-height:1.1;font-weight:600;letter-spacing:-.035em}.money-totals span,.money-empty{color:var(--ink-3);font-size:12px}.money-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.money-table{width:100%;border-collapse:collapse}.money-table th,.money-table td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left}.money-table th{color:var(--ink-3);font-size:12px;font-weight:500}.money-bars,.money-rows{margin:0;padding:0;list-style:none}.money-bars li{display:grid;gap:6px;padding:10px 0;border-bottom:1px solid var(--line)}.money-bars li>div,.money-rows li{display:flex;justify-content:space-between;gap:12px}.money-rows li{padding:10px 0;border-bottom:1px solid var(--line)}.money-track{display:block;height:8px;overflow:hidden;border-radius:var(--r-pill);background:var(--surface)}.money-track i{display:block;height:100%;border-radius:var(--r-pill);background:var(--ink)}@media(min-width:900px){.money-grid{grid-template-columns:1fr 1fr}.money-totals{grid-column:1 / -1;grid-template-columns:repeat(4,1fr)}.money-wide{grid-column:1 / -1}}.event-type-list{display:grid;gap:16px;margin:0 0 16px;padding:0;list-style:none}.event-type{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 16px;align-items:end;padding:16px;border-radius:var(--r-2);background:var(--surface)}.event-type input:not([type=checkbox]),.event-type textarea{background:var(--bg)}.event-type-name,.event-type-list-box,.event-type-actions{grid-column:1 / -1}.event-type-check{display:flex;align-items:center;gap:8px;min-height:48px}.event-type-actions{display:flex;flex-wrap:wrap;gap:8px}.event-type label{display:grid;gap:4px;justify-items:stretch;text-align:left}.event-type label.event-type-check{display:flex}.ks{display:grid;gap:16px;margin:16px 0}.ks-controls{display:grid;gap:12px;padding:16px;border-radius:var(--r-2);background:var(--surface)}.ks-controls header{display:flex;align-items:center;gap:8px}.ks-controls header h3{flex:1;font-size:20px;letter-spacing:-.02em}.ks-row{display:flex;flex-wrap:wrap;gap:12px}.ks-row label{display:grid;gap:4px;font-size:14px}.ks-controls fieldset{display:grid;gap:6px;margin:0;padding:0;border:0}.ks-controls legend{padding:0;margin-bottom:4px;font-weight:600}.ks-check{display:flex;align-items:center;gap:8px}.ks-sheet{padding:24px;border:1px solid var(--line);border-radius:var(--r-2);background:var(--bg);color:var(--ink)}.ks-sheet h2{margin:0 0 8px;font-size:22px}.ks-sheet h3{margin:16px 0 4px;font-size:16px;border-bottom:2px solid var(--ink)}.ks-sheet h4{margin:10px 0 2px;font-size:14px}.ks-sheet p{margin:4px 0}.ks-sheet ul{margin:0;padding:0;list-style:none}.ks-sheet li{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid var(--line);break-inside:avoid;font-size:14px}.ks-totals span:not(.ks-box){flex:1}.ks-box{flex:none;display:inline-block;width:14px;height:14px;margin-top:2px;border:1.5px solid var(--ink)}@media print{body:has(.ks) *{visibility:hidden}.ks-sheet,.ks-sheet *{visibility:visible}.ks-sheet{position:absolute;inset:0 auto auto 0;width:100%;padding:0;border:0}}
