

/* โต๊ะ: แยกออเดอร์ใส่กล่องกลับบ้าน แต่ใช้บิลโต๊ะเดิม */
.dinein-fulfillment:not([hidden]){display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:transparent;border:0;border-radius:0;padding:0;margin:4px 0 8px}
.dinein-fulfillment strong{font-size:12px;color:#796f5c;white-space:nowrap}
.dinein-fulfillment-options{display:flex;flex-wrap:wrap;gap:6px}
.dinein-fulfillment-options button{padding:7px 12px;border:1px solid #c9b99f;background:#fffaf4;color:#30451e;border-radius:999px;font-size:13px;font-weight:700;min-height:36px;width:auto}
.dinein-fulfillment-options button.active{background:#30451e;border-color:#30451e;color:#fff}
.dinein-fulfillment small{display:none}
@media(max-width:360px){.dinein-fulfillment-options button{font-size:12px;padding:7px 9px}}


.customer-recommendations:not([hidden]){margin:9px 0 15px;padding:10px 0;border-bottom:1px solid #e9ddca}.customer-recommendations>b{display:block;color:#30451e;font-size:14px;margin-bottom:8px}.customer-recommend-list{display:flex;gap:7px;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x proximity}.customer-recommend-pill{flex:0 0 auto;scroll-snap-align:start;max-width:230px;border-radius:999px;padding:9px 12px;background:#f8eddb;color:#30451e;border:1px solid #dcccad;white-space:nowrap;font-size:12px;text-overflow:ellipsis;overflow:hidden;min-height:38px}
/* Customer clarity adjustments */
.customer-bottom-link{margin:24px 0 12px;text-align:center;font-size:12px}
.customer-bottom-link a{color:#715d43}
.order-progress:not([hidden]){display:flex;gap:5px;margin:10px 0}
.order-progress span{flex:1;min-width:0;border:1px solid #ddcfb6;background:#f1e9d9;color:#7e735f;padding:8px 4px;border-radius:9px;font-size:11px;font-weight:650;text-align:center}
.order-progress span.done{background:#dce9d5;color:#30451e;border-color:#a5b997}
.cart-summary{margin:12px 0;padding:12px;border-top:1px solid #ded0b8;border-bottom:1px solid #ded0b8;font-weight:800;text-align:right}
#menuLoading[hidden],#retryMenu[hidden],#orderProgress[hidden],#takeawayLink[hidden]{display:none!important}
.menu-loading{padding:6px 0}
.loading-row{display:flex;gap:12px;margin:16px 0}
.loading-image{width:90px;height:90px;flex-shrink:0;border-radius:10px;background:#e4d9c6}
.loading-text{flex:1;padding:12px 0}
.loading-line{height:15px;border-radius:5px;background:#e4d9c6;margin:10px 0;animation:boonthangPulse 1.3s ease-in-out infinite alternate}
.loading-line.short{width:56%}
@keyframes boonthangPulse{from{opacity:.5}to{opacity:1}}
#regularCustomerPayment{margin:12px 0;padding:11px;background:#f3eddf;border-radius:10px}
#regularCustomerPayment summary{cursor:pointer;font-weight:700}
#retryMenu{margin:10px 0}

/* บุญถัง · Minimal mobile-first UI, 29 ต.ค. 2569
   Overrides presentation only: keep cream/olive/gold theme, real logo, all POS functions. */
:root{--ui-line:#e7dac8;--ui-card:#fffaf4;--ui-forest:#30451e}
.customer-main{max-width:640px;margin:12px auto;padding:0 14px 105px}
.customer-heading{padding:4px 0 6px;align-items:center}
.customer-heading h1{font-size:20px;margin:0}
.customer-eyebrow{display:none}
.customer-seat{font-size:13px;background:#f0e9da;border:1px solid #ded0b7;padding:8px 12px;border-radius:11px}
.customer-shortcuts{margin:3px 0 8px;font-size:12px}
.customer-shortcuts a{padding:5px 9px;background:transparent;border:1px solid var(--ui-line)}
.customer-main #status{margin:4px 0 10px}
.customer-bill-actions{display:flex;align-items:center;gap:8px;margin:4px 0 10px}
.customer-bill-actions button{flex:1;min-width:0;margin:0!important;font-size:12px!important;line-height:1.25;padding:12px 7px!important;min-height:43px}
.customer-main #requestBill{background:#f3e9d5!important;color:var(--ui-forest)!important}
.customer-main #viewBill{background:transparent;color:var(--ui-forest);border:1px solid #d8cbb7}
.customer-main #menuSearchCustomer{font-size:15px!important;padding:11px 13px!important}
.customer-menu-tools{margin:9px 0 4px}
.customer-menu-tools strong{font-size:15px}
.customer-main .tabsMenu{top:59px;margin:0 -4px 11px;padding:7px 4px;gap:6px}
.customer-main .tabsMenu button{border:1px solid var(--ui-line);min-height:37px;padding:8px 13px;background:#f8f0e4;font-weight:650}
.customer-main .tabsMenu button.active{background:var(--ui-forest);border-color:var(--ui-forest);color:white}
.customer-main .catalog,.customer-main .catalog:not(.grid){display:grid;grid-template-columns:1fr!important;gap:0}
.customer-main .entry{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch;gap:13px;padding:12px 0;border:0;border-bottom:1px solid var(--ui-line);border-radius:0;background:transparent;box-shadow:none;min-width:0}
.customer-main .entry img,.customer-main .food-fallback{width:104px!important;height:104px!important;object-fit:cover;border-radius:13px;background:#eee7da}
.customer-main .entry .body{padding:3px 0!important;min-height:104px!important;display:flex;flex-direction:column;gap:4px;justify-content:center;min-width:0}
.customer-main .entry h3{font-size:16px!important;font-weight:750;margin:0;line-height:1.35;min-height:0;flex:0}
.customer-main .entry-description{font-size:12px;color:#897d69;line-height:1.35;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;min-height:0}
.customer-main .entry-description:empty{display:none}
.customer-main .entry-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:4px}
.customer-main .entry .price{font-size:17px!important;font-weight:800;color:var(--ui-forest)}
.customer-main .entry .add-item{background:#eae1d0;color:var(--ui-forest);border:1px solid #d8c9ae;width:42px!important;height:42px!important;min-height:42px!important;font-size:26px!important;border-radius:50%}
.customer-main~.cartDock{width:min(calc(100vw - 20px),620px)!important;bottom:calc(8px + env(safe-area-inset-bottom));border-radius:14px;padding:10px 13px}
.customer-main~.cartDock button{background:#e5d6ae;color:var(--ui-forest)}

/* Menu V2 — minimal mobile-first, preserves legacy via ?legacyMenu=1 */
.menu-v2{max-width:760px;margin:auto}.mv-head,.mv-tools,.mv-filters,.mv-row,.mv-open,.mv-edit-head,.mv-sort-row,.mv-extra-row{display:flex;align-items:center;gap:10px}.mv-head{justify-content:space-between;margin:8px 0 15px}.mv-head h2{margin:0;font-size:20px}.mv-head button{width:auto;padding:10px 14px}.mv-tools{gap:8px}.mv-tools input{flex:1;min-width:0;margin:0}.mv-tools select{width:min(42%,190px);margin:0}.mv-filters{justify-content:space-between;padding:13px 2px;color:#756b5b;font-size:13px}.mv-filters label{display:flex;align-items:center;gap:6px}.mv-rows{border-top:1px solid #e5d9c8}.mv-row{border-bottom:1px solid #e5d9c8;padding:9px 0;min-height:70px;justify-content:space-between}.mv-row[hidden]{display:none!important}.mv-row.mv-off{background:#f0ece6;opacity:.69}.mv-open{flex:1;min-width:0;background:transparent!important;color:#30451e!important;text-align:left;padding:0!important;border:0!important;box-shadow:none!important}.mv-open img,.mv-photo-empty{width:52px;height:52px;object-fit:cover;border-radius:10px;background:#e7dfd0;flex-shrink:0;display:grid;place-items:center}.mv-title{display:flex;flex-direction:column;gap:4px;min-width:0}.mv-title b{font-size:14px;line-height:1.4}.mv-title small{font-size:13px;color:#847965}.mv-toggle{width:50px;height:32px;position:relative;flex-shrink:0;cursor:pointer}.mv-toggle input{position:absolute;opacity:0;width:100%;height:100%;z-index:1;cursor:pointer}.mv-switch{display:block;width:46px;height:28px;border-radius:20px;background:#ada89e;position:relative;transition:background .15s}.mv-switch:before{content:'';position:absolute;left:3px;top:3px;width:22px;height:22px;background:white;border-radius:50%;transition:transform .15s}.mv-toggle input:checked+.mv-switch{background:#30451e}.mv-toggle input:checked+.mv-switch:before{transform:translateX(18px)}.mv-advanced{margin-top:18px;border-top:1px solid #e5d9c8;padding:14px 0}.mv-advanced summary{cursor:pointer;font-weight:700;font-size:13px;color:#30451e}.mv-advanced-inner{padding:12px 0}.mv-sort-row,.mv-extra-row{padding:9px 0;border-bottom:1px solid #ece0cf}.mv-sort-row span,.mv-extra-row span{flex:1}.mv-sort-row button,.mv-extra-row button{width:auto;padding:7px 11px}.mv-legacy-links{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:15px 0}.mv-legacy-links a{font-size:13px}.mv-legacy-links button{width:auto}.mv-sheet{border:0;border-radius:16px;max-width:min(95vw,520px);width:100%;max-height:90dvh;padding:0;background:#fffaf4;color:#30451e}.mv-sheet::backdrop{background:rgba(0,0,0,.48)}.mv-editor{display:grid;gap:13px;padding:18px}.mv-editor label{display:grid;gap:6px;font-weight:650}.mv-editor input,.mv-editor select,.mv-editor textarea{width:100%;box-sizing:border-box}.mv-editor .mv-check{display:flex;align-items:center;gap:10px}.mv-check input{width:auto}.mv-edit-head{justify-content:space-between}.mv-edit-head h2{margin:0;font-size:19px}.mv-edit-head button{width:auto}.mv-sheet-photo{width:74px;height:74px;object-fit:cover;border-radius:9px}.mv-sheet-advanced{display:grid;gap:12px;padding:10px 0}.mv-sheet-advanced button{width:auto}.mv-danger{background:#fff2ed!important;color:#a53b2a!important;border:1px solid #e7b8a6!important}.mv-log{padding:8px 0;border-bottom:1px solid #ebddcc}.mv-log small{display:block;color:#807365}

/* Back-office: one main dashboard, persistent primary tabs, secondary functions in More. */
.staff-toolbar h1{font-size:20px}
.staff-quick-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 14px}
.staff-quick-stats>div{display:flex;flex-direction:column;gap:3px;padding:11px 12px;border-radius:12px;background:#fffaf4;border:1px solid var(--ui-line)}
.staff-quick-stats small{font-size:12px;color:#7d7366}
.staff-quick-stats strong{font-size:24px;line-height:1.2;color:var(--ui-forest);font-variant-numeric:tabular-nums}
.staff-nav{display:flex!important;align-items:stretch;gap:5px;overflow:visible!important;flex-wrap:nowrap!important;padding:5px 0 10px;margin:0 0 8px}
.staff-nav>button{flex:1 1 0!important;width:auto!important;padding:10px 7px!important;white-space:nowrap;font-size:13px!important;min-height:43px!important}
.staff-more-nav{position:relative;flex:0 0 auto;align-self:stretch}
.staff-more-nav>summary{display:flex;align-items:center;justify-content:center;list-style:none;cursor:pointer;border:1px solid #d8c9b5;border-radius:11px;background:#efe6d8;color:var(--ui-forest);padding:10px;min-height:43px;font-size:13px;font-weight:750}
.staff-more-nav>summary::-webkit-details-marker{display:none}
.staff-more-list{position:absolute;z-index:9;right:0;top:calc(100% + 5px);width:min(230px,80vw);display:grid;gap:5px;background:#fffaf4;border:1px solid var(--ui-line);border-radius:13px;box-shadow:0 12px 30px #483b2526;padding:8px}
.staff-more-list button{width:100%;text-align:left;padding:11px 12px;font-size:13px;border-radius:8px;background:#f3ecdf;color:var(--ui-forest)}
.staff-more-list button.active{background:var(--ui-forest);color:white}
.staff-nav .staff-more-nav[open]>summary{border-color:var(--ui-forest)}
.staff-mode-note{margin:5px 0;padding:7px 10px;box-shadow:none}
#content .order{box-shadow:none;border:1px solid var(--ui-line);border-radius:14px;padding:13px}
#content .order .row:last-child{gap:10px}
#content .kitchen-accept,#content .kitchen-done{min-width:115px}
@media(max-width:420px){.customer-main .entry{grid-template-columns:88px minmax(0,1fr);gap:11px;padding:11px 0}.customer-main .entry img,.customer-main .food-fallback{width:88px!important;height:91px!important}.customer-main .entry .body{min-height:91px!important}.customer-main .entry h3{font-size:15px!important}.customer-main .entry .price{font-size:16px!important}.staff-nav>button,.staff-more-nav>summary{font-size:12px!important;padding:9px 6px!important}.staff-quick-stats>div{padding:10px 8px}.staff-quick-stats strong{font-size:22px}}
@media(min-width:750px){.customer-main{max-width:720px}.customer-main .entry{grid-template-columns:118px minmax(0,1fr)}.customer-main .entry img,.customer-main .food-fallback{width:118px!important;height:105px!important}}


/* Customer acceptance: compact above-the-fold layout, touch targets and stable image geometry */
header:has(+ .customer-main){min-height:48px;padding-top:5px;padding-bottom:5px}
header:has(+ .customer-main) .brand{gap:8px}
header:has(+ .customer-main) .brand img.logo{width:34px;height:34px}
header:has(+ .customer-main) .brand b{font-size:17px;line-height:1.2}
.customer-main{margin:0 auto;padding:0 12px 90px}
.customer-heading,.customer-shortcuts{display:none!important}
.customer-main .dinein-fulfillment:not([hidden]){margin:5px 0;display:block}
.customer-main .dinein-fulfillment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}
.customer-main .dinein-fulfillment-options button{width:100%;min-height:38px;border-radius:9px;padding:6px 8px;font-size:14px}
.customer-main #status{font-size:11px;line-height:1.3;margin:3px 0 5px}
.customer-main .customer-order-summary{min-height:32px;padding:6px 9px;margin:3px 0}
.customer-main #customerMenuSticky{margin:3px 0 0}
.customer-main #menuSearchCustomer{min-height:38px;padding:8px 11px!important;font-size:14px!important}
.customer-main .tabsMenu{position:relative;top:auto;margin:2px -3px 3px;padding:3px;gap:5px}
.customer-main .tabsMenu button{min-height:38px;padding:7px 11px;font-size:14px}
.customer-main .customer-recommendations:not([hidden]){margin:2px 0 5px;padding:3px 0 5px;display:flex;align-items:center;gap:7px;min-height:35px}
.customer-main .customer-recommendations>b{flex:0 0 auto;font-size:11px;margin:0}
.customer-main .customer-recommend-list{flex:1;min-width:0;gap:5px;padding:0}
.customer-main .customer-recommend-pill{font-size:11px;min-height:32px;padding:6px 9px;max-width:180px}
.customer-main .customer-menu-tools{margin:2px 0 0;min-height:25px}
.customer-main .customer-menu-tools strong{font-size:13px}
.customer-main .customer-menu-tools button{font-size:11px;min-height:32px;padding:5px 8px}
.customer-main .entry{padding:7px 0!important;gap:9px!important;grid-template-columns:86px minmax(0,1fr)!important;min-height:99px}
.customer-main .entry img,.customer-main .food-fallback{width:86px!important;height:86px!important;aspect-ratio:1;object-fit:cover}
.customer-main .entry .body{min-height:86px!important}
.customer-main .entry .add-item{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important}
.customer-main .entry h3{font-size:14px!important}
.customer-main #repeatLastOrder{white-space:nowrap}
.customer-main ~ .cartDock button{min-height:44px}
@media(max-width:360px){.customer-main .entry{grid-template-columns:80px minmax(0,1fr)!important}.customer-main .entry img,.customer-main .food-fallback{width:80px!important;height:80px!important}.customer-main .entry .body{min-height:80px!important}}

/* Preview: customer three actions and accessible Thai text */
.customer-main{max-width:560px;margin-inline:auto}
.customer-main .dinein-fulfillment:not([hidden]){margin:2px 0 3px}
.customer-main .dinein-fulfillment-options button{min-height:42px;font-size:14px;line-height:1.4;padding:5px 8px}
.customer-main #status{font-size:11px;margin:2px 0 4px}
.customer-main .customer-bill-actions:not([hidden]){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:4px 0 6px}
.customer-main .customer-bill-actions button{min-height:44px;height:auto!important;font-size:14px!important;line-height:1.4!important;padding:8px 4px!important;border-radius:10px}
.customer-main #requestBill{background:#f1e2bd!important}
.customer-main #callStaff{background:#fffaf4;color:#30451e;border:1px solid #c9b99f}
.customer-bill-feedback:not([hidden]){display:block;font-size:12px;line-height:1.4;margin:3px 0}
.customer-main .tabsMenu{overflow-x:auto;scrollbar-width:none}
.customer-main .tabsMenu::-webkit-scrollbar,.customer-main .customer-recommend-list::-webkit-scrollbar{display:none}
.customer-main .customer-recommend-list{scrollbar-width:none}
@media(min-width:600px){.customer-main .tabsMenu{overflow:visible;flex-wrap:wrap;white-space:normal}}

/* hide old multi-step progress; the single-line order summary remains */
.customer-main #orderProgress{display:none!important}

/* Global extras editor: mobile accessible, safe scrolling and persistent save */
.mv-extra-row{gap:8px;flex-wrap:wrap;min-height:49px}
.mv-extra-row>span{flex:1 1 auto;font-size:14px;line-height:1.5}
.mv-extra-row small{display:block;font-size:12px;color:#766853}
.mv-extra-check{display:flex!important;align-items:center;gap:8px;min-width:35%;flex:1!important;font-size:14px;line-height:1.5;cursor:pointer}
.mv-extra-check input{width:21px!important;height:21px;flex-shrink:0;accent-color:#30451e}
.mv-extra-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.mv-extra-actions>button{flex:1;min-height:44px;font-size:14px}
.mv-muted{font-size:13px;line-height:1.5;color:#72664f;margin:4px 0 10px}
.mv-extra-row button{min-width:44px;min-height:44px;font-size:14px;line-height:1.4}
.mv-sheet{max-height:calc(100dvh - 26px);overflow-y:auto;overscroll-behavior:contain}
.mv-editor>#mvSave{position:sticky;bottom:0;z-index:2;min-height:48px;font-size:16px;line-height:1.4;box-shadow:0 -8px 14px rgba(255,250,244,.93);margin-bottom:0}
.mv-sheet .mv-edit-head{position:sticky;top:0;z-index:3;background:#fffaf4;padding:8px 0}
@media(max-width:420px){.mv-sheet{max-width:calc(100vw - 14px)}.mv-editor{padding:12px}.mv-extra-row{gap:4px}.mv-extra-check{min-width:46%}.mv-extra-row>span{font-size:13px}.mv-extra-row button{padding:8px}}

.mv-undo{position:sticky;bottom:0;z-index:5;display:flex;gap:10px;align-items:center;justify-content:space-between;background:#e8e7d9;padding:10px;border-radius:10px;font-size:14px;line-height:1.4}
.mv-undo button{min-height:44px;font-size:14px}

.bill-qr{text-align:center;border:1px solid #e2d3c0;padding:12px;border-radius:14px;background:#fffaf4;margin:12px 0}.bill-qr img{display:block;max-width:100%;height:auto;margin:0 auto 8px}.bill-qr b{display:block;font-size:17px;line-height:1.5}.bill-qr p{font-size:13px;line-height:1.5;color:#685b48}

.checkout-dialog{width:min(95vw,560px);max-height:94dvh;overflow-y:auto;padding:16px;background:#fffaf4;color:#30451e;border-radius:16px}
.checkout-dialog .checkout-items{max-height:24dvh;overflow:auto;border-bottom:1px solid #dfd4c2}
.checkout-dialog .checkout-actions{display:grid;gap:8px;margin:12px 0}
.checkout-dialog .checkout-actions[hidden]{display:none}
.checkout-dialog .checkout-actions button,.checkout-bottom button{min-height:44px;font-size:15px;line-height:1.5}
.checkout-dialog .checkout-bottom{display:flex;gap:8px;margin-top:12px}
.checkout-dialog .checkout-bottom button{flex:1}
.customer-bill-actions #viewBill{grid-column:span 2}
.customer-bill-actions #requestBill{display:none!important}
.customer-bill-actions:not([hidden]){grid-template-columns:minmax(0,2fr) minmax(0,1fr)!important}
#checkoutStatus{font-size:14px;line-height:1.5;font-weight:600}

.checkout-staff-alert{border:2px solid #c5a06d}
.checkout-staff-row{border-top:1px solid #d8c9b8;padding:12px 0;font-size:15px;line-height:1.5}
.checkout-staff-row button{min-height:44px;font-size:14px}
.checkout-staff-row p{margin:4px 0 10px}

.checkout-extra{font-size:13px;line-height:1.5;margin-top:4px;padding-left:6px;color:#78624c}

.preview-ribbon{background:#e1cfa8;color:#30451e;position:sticky;top:0;z-index:999;text-align:center;padding:5px 8px;font-size:12px;line-height:1.4;font-weight:700}
body:has(.preview-ribbon) header{top:27px}
