:root{--cream:#fff6e5;--pink:#f3b8c9;--ink:#29272a;--muted:#71686d;--surface:#fffcf7;--border:#ded3cc;--green:#237346;--red:#b33243;--soft-green:#e5f1e6;--soft-red:#fff0f1;font-family:Tahoma,"Leelawadee UI",sans-serif;color:var(--ink);background:var(--cream);font-size:16px;line-height:1.5;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.5;cursor:not-allowed}button,input,select{border-radius:12px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #346aad;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:32px;line-height:1.2;margin-bottom:0}h2{font-size:22px;margin-bottom:12px}h3{font-size:18px;margin-bottom:12px}input,select{min-width:0;color:var(--ink);background:var(--surface);border:1px solid var(--border);min-height:52px;font-size:16px;padding:10px 12px}label{display:grid;gap:8px;font-weight:600}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:700;margin-bottom:10px}.muted{color:var(--muted)}.eyebrow{font-weight:700;font-size:13px;color:var(--muted);margin:0 0 5px}
.shop-header{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--ink);color:var(--cream);padding:14px max(24px,calc((100% - 1200px)/2));}.brand{display:flex;align-items:center;gap:12px}.brand img{width:64px;height:64px;object-fit:contain;background:var(--cream);border-radius:16px}.brand strong{display:block;font-size:23px;font-weight:800}.brand span{font-size:13px;color:var(--pink)}.connection{display:flex;align-items:center;gap:16px;font-size:14px}.header-button{min-height:48px;background:#3b383c;border:1px solid #61575c;color:var(--cream);padding:8px 18px;font-weight:700}
.page{max-width:1248px;margin:auto;padding:30px 24px 72px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.button{border:1px solid transparent;min-height:52px;padding:12px 20px;font-weight:700;text-align:center;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button-primary{background:var(--ink);color:var(--cream)}.button-secondary{background:var(--surface);border-color:var(--border);color:var(--ink)}.button-green{background:var(--green);color:white}.button-red{background:var(--red);color:white}.button-red-soft{background:var(--soft-red);border-color:#edc6cb;color:var(--red)}.full-width{width:100%}.new-order{background:var(--pink);color:var(--ink);min-width:190px;min-height:58px;font-size:18px}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-bottom:22px;border-bottom:1px solid var(--border)}.tabs button{border:1px solid var(--border);min-height:62px;background:var(--surface);font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;color:var(--ink)}.tabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--cream)}.tabs span{font-size:13px;min-width:27px;padding:2px 6px;border-radius:20px;background:#ede5df;color:var(--ink);font-variant-numeric:tabular-nums}.tabs button[aria-selected=true] span{background:var(--pink)}.queue-heading{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:24px 0 18px}.queue-heading h2{margin:0 auto 0 0}.queue-heading .muted{font-size:14px}.date-filter{display:flex;align-items:center;font-size:13px;gap:10px}.date-filter input{min-height:44px}.bills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:22px}.bill{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:22px;box-shadow:0 4px 16px #29272a05}.bill-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.bill-number{font-size:20px;font-weight:800}.bill-meta{font-size:13px;color:var(--muted);margin-top:2px}.bill-stage{background:#ede5df;border-radius:20px;font-weight:700;font-size:13px;padding:5px 12px;white-space:nowrap}.bill-stage.ready,.bill-stage.paid{background:var(--soft-green);color:var(--green)}.bill-stage.cancelled{background:var(--soft-red);color:var(--red)}.drink-line{border-top:1px solid var(--border);padding:18px 0}.drink-line:first-child{border:0}.line-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.menu-name{font-size:21px;font-weight:800}.drink-detail{color:var(--muted);font-size:15px;margin:4px 0 14px}.line-controls{display:grid;grid-template-columns:minmax(0,1fr) 110px 110px;align-items:center;gap:16px}.line-controls .button{padding:12px 10px;width:100%}.quantity{font-size:18px;font-weight:800;white-space:nowrap}.item-status{font-size:14px;font-weight:700}.item-status.done{color:var(--green)}.item-status.cancelled{color:var(--red)}.line-controls.display-only{display:flex;justify-content:space-between;flex-wrap:wrap}.line-price{font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}.line-price small{font-size:13px;font-weight:400;color:var(--muted);display:block}.bill-footer{border-top:1px solid var(--border);padding-top:18px;display:grid;gap:16px}.bill-tools{display:grid;grid-template-columns:minmax(0,1fr) 64px;gap:22px}.trash-button{padding:12px!important}.trash-button svg{height:23px;width:23px;fill:none;stroke:currentColor;stroke-width:1.8}.bill-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bill-actions.single{grid-template-columns:1fr}.bill-total{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-weight:800;font-size:22px}.bill-total-detail{color:var(--muted);font-size:14px}.member-note{font-size:14px;color:var(--muted)}.empty{grid-column:1/-1;text-align:center;padding:56px 20px;color:var(--muted);background:var(--surface);border-radius:18px}.empty strong{display:block;color:var(--ink);font-size:20px;margin-bottom:8px}.message,.offline-note{padding:14px 18px;border-radius:12px;margin-bottom:18px}.message{color:var(--red);background:var(--soft-red);border:1px solid #edc6cb}.offline-note{color:var(--ink);background:#f5e7c9}.page-footer{display:flex;justify-content:space-between;gap:16px;margin-top:30px;font-size:13px;color:var(--muted);align-items:center}.text-button{border:0;color:var(--muted);background:transparent;padding:10px;min-height:44px;text-decoration:underline}.toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:14px 20px;background:var(--ink);color:var(--cream);border-radius:14px;z-index:10;box-shadow:0 8px 24px #29272a30;display:flex;align-items:center;gap:20px}.toast button{background:var(--pink);color:var(--ink);min-height:44px;border:0;padding:8px 14px;font-weight:700;white-space:nowrap}
.dialog{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:22px;padding:28px;width:calc(100% - 32px);max-width:490px;max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 20px 80px #29272a35}.dialog::backdrop{background:#29272a80}.dialog-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:20px}.dialog-heading h2{margin-bottom:0}.close-button{min-width:48px;min-height:48px;border:1px solid var(--border);background:var(--surface);font-size:26px;color:var(--ink)}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.dialog form>label{margin-bottom:18px}.dialog form>.full-width{margin-top:10px}.order-dialog{max-width:650px}.menu-builder{background:var(--cream);padding:20px;border-radius:16px}.menu-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;justify-content:space-between}.menu-title strong{font-size:24px;font-weight:800}.menu-title span{font-size:14px;color:var(--muted)}.choice-grid,.quantity-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.choice-grid button,.quantity-shortcuts button{min-height:52px;background:var(--surface);border:1px solid var(--border);font-weight:700;color:var(--ink)}.choice-grid button[aria-pressed=true],.quantity-shortcuts button[aria-pressed=true]{background:var(--ink);color:var(--cream);border-color:var(--ink)}.topping-option{display:flex;align-items:center;gap:12px;background:var(--surface);padding:14px;border:1px solid var(--border);border-radius:12px;min-height:56px}.topping-option input{accent-color:var(--ink);min-height:24px;width:24px;height:24px;padding:0}.topping-option span{margin-left:auto;color:var(--muted)}.custom-quantity{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:14px}.custom-quantity input{width:120px}.order-dialog h3{margin-top:24px}.draft-row{padding:18px 0;border-bottom:1px solid var(--border)}.draft-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.draft-row strong{font-size:19px;font-weight:800}.draft-fields{display:grid;grid-template-columns:100px 1fr 1fr;gap:12px;align-items:end}.draft-fields label{font-size:13px;color:var(--muted)}.draft-fields .draft-pearl{display:flex;align-items:center;gap:8px;min-height:52px;font-size:14px;color:var(--ink)}.draft-pearl input{width:22px;height:22px;min-height:22px;padding:0;accent-color:var(--ink)}.draft-remove{padding:8px 14px;min-height:44px;border:1px solid #edc6cb;background:var(--soft-red);color:var(--red);font-weight:700}.fixed-lines{margin-top:18px;padding:14px;background:var(--soft-green);border-radius:12px;font-size:14px}.dialog-footer{margin-top:22px}.dialog-footer>strong{display:block;font-size:22px;text-align:right}.form-error{color:var(--red);margin-top:14px;padding:10px 12px;background:var(--soft-red);border-radius:10px}.confirm-step{color:var(--red);font-weight:700}.member-balance{font-weight:700;padding:16px;background:var(--cream);border-radius:12px;margin-bottom:18px}.redemption-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.redemption-fields label{font-size:14px}#redemption-summary{margin:18px 0 0;font-weight:700}
@media(max-width:1000px){.bills{grid-template-columns:1fr}.shop-header{padding:14px 24px}.bill{padding:24px}.line-controls{grid-template-columns:minmax(0,1fr) 140px 140px}.bill-actions .button{min-height:56px}}
@media(max-width:600px){.shop-header{padding:12px 16px;align-items:flex-start}.brand img{width:48px;height:48px}.brand strong{font-size:18px}.brand span{font-size:12px}.connection{flex-direction:column;align-items:flex-end;gap:6px;font-size:12px}.header-button{min-height:40px;padding:6px 10px;font-size:12px}.page{padding:22px 16px 84px}.page-heading{align-items:center}.new-order{min-width:0;font-size:16px;padding:12px 16px}.tabs{gap:8px}.tabs button{flex-direction:column;gap:4px;font-size:14px;padding:8px 4px;min-height:76px}.bill{padding:18px}.line-controls{grid-template-columns:minmax(0,1fr) 92px 92px;gap:12px}.bill-actions{grid-template-columns:1fr}.page-footer{flex-direction:column;align-items:flex-start}.dialog{padding:22px}.draft-fields{grid-template-columns:80px 1fr}.draft-pearl{grid-column:1/-1}.redemption-fields{grid-template-columns:1fr}.dialog-actions{gap:12px}.dialog-actions .button{padding:12px}.menu-builder{padding:16px}.choice-grid,.quantity-shortcuts{gap:7px}.choice-grid button{font-size:14px}.bill-head{flex-wrap:wrap}.date-filter{flex-wrap:wrap}.menu-name{font-size:21px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease,box-shadow .15s ease}button:active:not(:disabled){box-shadow:inset 0 0 0 2px #29272a30}}
@media(max-width:420px){.line-controls:not(.display-only){grid-template-columns:1fr 1fr}.line-controls:not(.display-only) .quantity{grid-column:1/-1}}
body{min-width:0}
/* Destructive actions stay left; the usual next action stays right. */
.bill-tools{grid-template-columns:64px minmax(0,1fr)}
.draft-remove+strong{margin-right:auto}
