.sabor-board{--sb-bg:#fffaf3;--sb-card:#fff;--sb-text:#25201d;--sb-muted:#665b50;--sb-border:#e4d7c7;--sb-accent:#ac3027;background:var(--sb-bg);color:var(--sb-text);display:flex;flex-direction:column;max-height:90dvh;border-radius:20px;overflow:hidden;font-family:'DM Sans',sans-serif}
.sabor-board *{box-sizing:border-box}.sabor-board [hidden]{display:none!important}.sabor-board button,.sabor-board input,.sabor-board textarea{font:inherit}.sabor-board button{cursor:pointer;min-height:44px;border:0}.sabor-board button:focus-visible,.sabor-board input:focus-visible,.sabor-board textarea:focus-visible{outline:3px solid #006cbc;outline-offset:2px}.sabor-board-head{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px 12px;gap:12px}.sabor-board-head small{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--sb-accent)}.sabor-board-head h2{font-size:25px;margin:4px 0;line-height:1.15}.sabor-board-head p{font-size:14px;color:var(--sb-muted);margin:5px 0}.sabor-board .sb-close{background:var(--sb-card);color:var(--sb-text);font-size:26px;border-radius:50%;width:44px;flex-shrink:0}
.sb-controls{padding:0 22px 10px}.sb-search{font-size:12px;display:block;color:var(--sb-muted);font-weight:700}.sb-search input{display:block;width:100%;padding:12px 14px;border:1px solid var(--sb-border);background:var(--sb-card);color:var(--sb-text);border-radius:12px;font-size:16px;margin:4px 0 10px}.sb-tabs{display:flex;gap:7px;overflow-x:auto;padding:2px 0 5px}.sabor-board .sb-tabs button{padding:9px 13px;border-radius:12px;background:#eddfcc;color:#45362c;white-space:nowrap;font-size:14px;font-weight:800}.sabor-board .sb-tabs button[aria-selected=true]{background:var(--sb-accent);color:#fff}.sb-selected{display:flex;gap:6px;align-items:center;flex-wrap:wrap;max-height:96px;overflow-y:auto;margin-top:6px}.sb-selected>span{font-size:12px;color:var(--sb-muted)}.sabor-board .sb-selected button{background:#dceee6;color:#154731;border-radius:10px;font-size:12px;min-height:36px;padding:6px 10px}.sb-scroll{min-height:95px;overflow-y:auto;overscroll-behavior:contain;padding:0 22px 8px;flex:1}.sb-group{padding:8px 0}.sb-group>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.sb-group h3{font-size:15px;margin:0;font-weight:800}.sabor-board .sb-clear{background:transparent;color:var(--sb-muted);font-size:12px;padding:6px 12px}.sb-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.sb-option{cursor:pointer;position:relative;display:flex;min-height:68px}.sb-option input{position:absolute;opacity:0;width:1px;height:1px}.sb-option>span{display:flex;flex:1;flex-direction:column;justify-content:center;background:var(--sb-card);padding:12px;border:1px solid var(--sb-border);border-radius:13px;gap:4px}.sb-option strong{font-size:14px;line-height:1.2}.sb-option small{font-size:11px;color:var(--sb-muted)}.sb-option input:checked+span{background:#ffedb3;border:2px solid #ac6c10;padding:11px;color:#332300}.sb-option input:checked+span small{color:#614106}.sb-option input:focus-visible+span{outline:3px solid #006cbc;outline-offset:2px}.sb-request-note{padding:12px;background:#f8e9bd;color:#66420c;border-radius:12px;font-size:13px;line-height:1.4}.sb-empty{color:var(--sb-muted);padding:20px 0;font-size:14px}
.sb-footer{padding:12px 22px 18px;background:var(--sb-bg);box-shadow:0 -4px 16px #00000009}.sb-footer>label{display:block;font-size:12px;font-weight:700;color:var(--sb-muted)}.sb-notes{width:100%;display:block;resize:vertical;max-height:100px;min-height:54px;background:var(--sb-card);border:1px solid var(--sb-border);color:var(--sb-text);border-radius:10px;padding:9px 12px;margin-top:4px;font-size:15px}.sb-status{font-size:12px;color:#21653c;min-height:24px;padding:6px 0}.sb-status.sb-error{color:#b42318}.sb-actions{display:flex;gap:10px}.sabor-board .sb-cancel{border-radius:12px;background:#ecdfce;color:#49372d;padding:12px 24px}.sabor-board .sb-add{flex:1;border-radius:12px;background:#a82f28;color:white;padding:13px 18px;font-weight:800;font-size:17px}.sabor-board .sb-add:disabled{opacity:.55;cursor:wait}
.modal:has(.sabor-board){padding:0;width:min(860px,96vw);max-height:94dvh;overflow:hidden}.dialog:has(.sabor-board){padding:0;overflow:hidden;width:min(860px,96vw)}
html[data-theme="dark"] .sabor-board{--sb-bg:#182026;--sb-card:#26323b;--sb-text:#fff6e7;--sb-muted:#d0c4b2;--sb-border:#4c555c;--sb-accent:#c74333}html[data-theme="dark"] .sabor-board .sb-tabs button:not([aria-selected=true]){background:#34454c;color:#f7eddf}html[data-theme="dark"] .sabor-board .sb-status:not(.sb-error){color:#92d6a9}html[data-theme="dark"] .sabor-board .sb-error{color:#ffb1a6}
@media(max-width:600px){.sabor-board{max-height:94dvh;border-radius:14px}.sabor-board-head{padding:14px 14px 8px}.sabor-board-head h2{font-size:21px}.sb-controls{padding:0 14px 7px}.sb-tabs{gap:5px}.sabor-board .sb-tabs button{padding:9px 11px;font-size:13px}.sb-scroll{padding:0 14px 8px}.sb-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.sb-option>span{padding:10px}.sb-option input:checked+span{padding:9px}.sb-option strong{font-size:13px}.sb-footer{padding:10px 14px 12px}.sb-selected{max-height:76px}.sb-search input{padding:10px 12px}.sb-group{padding:4px 0}.sb-notes{min-height:45px}.sabor-board .sb-cancel{padding:12px 18px}}
/* Keep language/theme controls and the first menu categories reachable. */
.category-tabs{justify-content:start}
@media(max-width:1550px){.topbar{height:auto;min-height:74px;flex-wrap:wrap;flex-shrink:0;padding-top:8px;padding-bottom:8px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.brand{min-width:220px}.brand strong{font-size:16px;letter-spacing:.08em}.brand small{font-size:8px;letter-spacing:.1em}.menu-mode-button{min-width:84px}.employee-switch-button{min-width:140px}}
@media(max-width:860px){.topbar{position:relative}.brand{min-width:0}.top-actions{width:100%;justify-content:space-between;margin:0}.employee-switch-button{min-width:120px;max-width:145px}.category-tabs{grid-auto-columns:96px}.menu-mode-switcher{margin-left:auto}.menu-mode-button{min-width:65px}.location-pill{max-width:95px}.catalog-toolbar{padding:10px 14px}}
.modal:has(.sabor-board),.dialog:has(.sabor-board){max-width:100%}.sabor-board{min-width:0}.sb-controls,.sb-scroll,.sb-footer{min-width:0}
.modal:has(.sabor-board),.dialog:has(.sabor-board){width:min(860px,calc(100vw - 40px))}
/* Integer counts use touch buttons and a shared numeric pop-out. */
.sb-rule{font-size:12px;color:var(--sb-muted);margin:0 0 9px}.sb-repeat{display:flex;flex-direction:column;background:var(--sb-card);border:1px solid var(--sb-border);border-radius:13px;overflow:hidden}.sb-repeat.selected{background:#ffedb3;border:2px solid #ac6c10;color:#332300}.sabor-board .sb-repeat-title{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:12px;text-align:left;background:transparent;color:inherit;width:100%;min-height:68px}.sb-repeat.selected small{color:#614106}.sb-stepper{display:flex;gap:5px;align-items:center}.sb-repeat .sb-stepper{padding:0 6px 6px}.sb-stepper button,.touch-count{min-width:48px;min-height:48px;border:1px solid #b8b1a5;border-radius:10px;font:700 20px/1.2 inherit;cursor:pointer;background:#f4e6cb;color:#392b19}.sabor-board .sb-stepper button{flex:1;font-size:21px;font-weight:800;background:#eddfcc;color:#45362c;min-height:48px;min-width:36px;border-radius:9px}.sb-stepper button:disabled{opacity:.35}.sabor-board .sb-stepper [data-count],.sabor-board .sb-stepper .sb-qty-number{background:#006db1;color:#fff}.sb-item-quantity{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-weight:800;font-size:14px}.sb-item-quantity .sb-stepper{min-width:166px}.sabor-board .sb-selected button{min-height:44px}.touch-count{display:block;width:100%;padding:13px;border:0;background:#006db1;color:#fff;font-size:20px;font-weight:800}.sq-overlay{position:fixed;inset:0;background:#101820bb;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;overscroll-behavior:contain}.sq-pad{box-sizing:border-box;width:min(360px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fffaf3;color:#25201d;border-radius:20px;padding:18px;box-shadow:0 16px 70px #0007;font-family:Arial,sans-serif}.sq-pad *{box-sizing:border-box}.sq-pad header{display:flex;align-items:center;justify-content:space-between;gap:10px}.sq-pad h2{margin:0;font-size:21px}.sq-pad button{min-height:54px;border:0;border-radius:12px;background:#e9dcc7;color:#392d20;font-size:21px;font-weight:700;cursor:pointer;touch-action:manipulation}.sq-pad button:focus-visible{outline:3px solid #006db1;outline-offset:2px}.sq-pad header button{width:48px;min-height:48px;font-size:28px;flex-shrink:0}.sq-pad output{display:block;background:white;border:2px solid #006db1;border-radius:12px;margin-top:14px;padding:12px;text-align:center;font-size:35px;font-weight:800;min-height:64px}.sq-pad p{font-size:12px;text-align:center;color:#665b50}.sq-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sq-pad [data-key=clear]{font-size:15px}.sq-actions{display:flex;gap:10px;margin-top:12px}.sq-actions button{flex:1;font-size:17px}.sq-pad [data-key=done]{background:#006db1;color:#fff}.sq-pad button:disabled{opacity:.4}.sb-footer .sb-notes{min-height:42px}
@media(max-width:600px){.sb-repeat .sb-stepper{gap:4px;padding:0 4px 4px}.sabor-board .sb-repeat-title{padding:9px}.sb-item-quantity{margin-bottom:5px}.sb-selected{max-height:50px}.sabor-board-head p{display:none}.sb-notes{min-height:40px}}

/* Compact modifier workspace: keep the cart and header clear; give choices the remaining space. */
.modal-layer:has(.sabor-board),.dialog-layer:has(.sabor-board){padding:0;background:transparent;backdrop-filter:none}
.modal:has(.sabor-board),.dialog:has(.sabor-board){position:fixed;left:var(--sb-left,8px);top:var(--sb-top,82px);width:var(--sb-width,calc(100vw - 16px));height:var(--sb-height,calc(100dvh - 90px));max-width:none;max-height:none;padding:0;overflow:hidden;border-radius:14px;border:1px solid #b7a58e;box-shadow:0 6px 22px #0003;display:flex;flex-direction:column}
.sabor-board{height:100%;max-height:none;min-height:0;border-radius:13px;flex:1}
.sabor-board .sb-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sabor-board-head{flex-shrink:0;align-items:center;gap:10px;padding:5px 12px 3px;min-height:52px}
.sabor-board-head h2{font-size:20px;line-height:1.15;margin:0;min-width:0}
.sabor-board .sb-close{width:44px;height:44px;min-height:44px;font-size:25px;background:transparent}
.sb-controls{flex-shrink:0;padding:0 12px 5px}
.sb-tools{display:flex;align-items:center;gap:8px;min-width:0}
.sb-search{flex:1;min-width:120px}
.sb-search input{height:44px;margin:0;padding:8px 11px;border-radius:9px;font-size:14px}
.sb-tabs{flex-shrink:0;padding:0;gap:5px;min-width:0}
.sabor-board .sb-tabs button{min-height:44px;padding:7px 11px;border-radius:9px;font-size:13px}
.sb-selected{flex-wrap:nowrap;max-height:44px;margin-top:5px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;gap:5px}
.sabor-board .sb-selected button{min-height:40px;flex-shrink:0;padding:6px 9px;font-size:12px;border-radius:8px;white-space:nowrap}
.sb-scroll{flex:1;min-height:0;padding:0 12px 8px;scrollbar-gutter:stable;scrollbar-width:thin}
.sb-group{padding:1px 0 5px}
.sb-group>header{min-height:40px;gap:8px}
.sb-group>header>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 9px;min-width:0}
.sb-group h3{font-size:14px;line-height:1.15}
.sb-rule{font-size:11px;line-height:1.2;margin:0;color:var(--sb-muted)}
.sabor-board .sb-clear{width:44px;min-height:40px;flex-shrink:0;padding:0;font-size:19px;border-radius:8px}
.sb-options{grid-template-columns:repeat(auto-fill,minmax(142px,1fr));gap:6px}
.sb-option{min-height:48px;min-width:0}
.sb-option>span{padding:7px 8px;border-radius:9px;gap:2px;align-items:center;text-align:center;justify-content:center}
.sb-option strong{font-size:13px;line-height:1.2;overflow-wrap:anywhere}
.sb-option small{font-size:11px}
.sb-option input:checked+span{padding:6px 7px}
.sb-repeat{border-radius:9px}
.sabor-board .sb-repeat-title{min-height:42px;padding:6px;gap:2px;align-items:center;text-align:center;justify-content:center}
.sb-repeat .sb-stepper{padding:0 4px 4px;gap:4px}
.sabor-board .sb-stepper button{min-height:44px;height:44px;min-width:34px;font-size:19px;border-radius:8px}
.sb-footer{flex-shrink:0;padding:7px 12px;background:var(--sb-bg);border-top:1px solid var(--sb-border);box-shadow:none}
.sb-footer-main{display:flex;align-items:center;flex-wrap:wrap;gap:7px}
.sb-item-quantity{flex:0 0 auto;margin:0;gap:7px;font-size:12px}
.sb-item-quantity .sb-stepper{min-width:130px;gap:4px}
.sb-note-label{flex:1 1 150px;min-width:0}
.sb-footer .sb-notes{height:44px;min-height:44px;max-height:44px;margin:0;padding:10px;font-size:14px;resize:none;border-radius:9px;line-height:22px}
.sb-actions{flex:0 1 auto;min-width:150px;margin:0;gap:0}
.sabor-board .sb-add{min-height:44px;height:44px;padding:9px 15px;font-size:15px;border-radius:9px;white-space:nowrap}
.sb-status{min-height:0;margin-top:5px;padding:0;font-size:12px;line-height:1.3}
@media(max-width:700px){.sabor-board-head{padding-inline:9px}.sabor-board-head h2{font-size:18px}.sb-controls{padding-inline:9px}.sb-tools{flex-wrap:wrap;gap:5px}.sb-search{flex-basis:100%}.sb-tabs{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.sabor-board .sb-tabs button{font-size:12px;padding:6px}.sb-scroll{padding-inline:9px}.sb-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.sb-footer{padding:6px 9px}.sb-footer-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px}.sb-note-label{grid-column:1 / -1;grid-row:1}.sb-actions{min-width:0}.sb-item-quantity .sb-stepper{min-width:124px}.sabor-board .sb-add{width:100%;font-size:14px;padding:8px}.sb-group>header>div{gap:2px 6px}}

/* Final layout: section buttons above search; item quantity is edited in the cart. */
.sb-tools{flex-direction:column;align-items:stretch;gap:5px}
.sb-tools .sb-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
.sb-tools .sb-search{flex:auto;width:100%}
.sb-footer-main{display:flex;flex-wrap:nowrap;gap:8px}
.sb-footer .sb-note-label{flex:1;min-width:0}
.sb-footer .sb-actions{flex:0 0 auto;min-width:150px}
@media(max-width:700px){.sb-footer .sb-actions{min-width:132px}.sb-tools .sb-search{flex-basis:auto}}

#modalLayer:has(.sabor-board),#dialogLayer:has(.sabor-board){background:transparent;backdrop-filter:none}

/* Group color belongs to the ring; button faces stay white or black. */
.sabor-board .sb-group,.sabor-board .sb-selected button{
 --sb-group-bg:#fff;--sb-group-ink:#18212b;--sb-group-muted:#34404c;
 --sb-group-ring:hsl(var(--sb-hue,36) 68% 34%);
}
html[data-theme="dark"] .sabor-board .sb-group,html[data-theme="dark"] .sabor-board .sb-selected button{
 --sb-group-bg:#000;--sb-group-ink:#f8fafc;--sb-group-muted:#e0e8f0;
 --sb-group-ring:hsl(var(--sb-hue,36) 75% 68%);
}
.sabor-board .sb-group h3{border-left:5px solid var(--sb-group-ring);padding-left:7px}
.sabor-board .sb-group .sb-option>span,.sabor-board .sb-group .sb-repeat{background:var(--sb-group-bg);border:2px solid var(--sb-group-ring);color:var(--sb-group-ink)}
.sabor-board .sb-group .sb-option>span{padding:6px 7px}
.sabor-board .sb-group .sb-option small{color:var(--sb-group-muted)}
.sabor-board .sb-group .sb-option input:checked+span,.sabor-board .sb-group .sb-repeat.selected{background:var(--sb-group-bg);border-color:var(--sb-group-ring);color:var(--sb-group-ink);box-shadow:inset 0 0 0 2px var(--sb-group-ring)}
.sabor-board .sb-group .sb-option input:checked+span small,.sabor-board .sb-group .sb-repeat.selected small{color:var(--sb-group-muted)}
.sabor-board .sb-choice-check{display:none;font-style:normal}
.sabor-board .sb-group .sb-option input:checked+span .sb-choice-check,.sabor-board .sb-group .sb-repeat.selected:after{display:block;content:"✓";position:absolute;top:5px;right:6px;font-size:13px;line-height:1;font-weight:900;color:var(--sb-group-ink);pointer-events:none}
.sabor-board .sb-group .sb-option input:checked+span strong{padding-inline:7px}
.sabor-board .sb-group .sb-stepper button,.sabor-board .sb-group .sb-stepper [data-count]{background:var(--sb-group-bg);color:var(--sb-group-ink);border:2px solid var(--sb-group-ring)}
.sabor-board .sb-selected button{background:var(--sb-group-bg);color:var(--sb-group-ink);border:2px solid var(--sb-group-ring);box-shadow:inset 0 0 0 1px var(--sb-group-ring)}

/* Matching completion actions and clear portion controls on both register surfaces. */
.sabor-board .sb-section-actions{display:flex;align-items:stretch;gap:6px;padding:2px 0 5px}
.sabor-board .sb-section-actions .sb-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));flex:3;min-width:0;gap:6px;padding:0;overflow:visible}
.sabor-board .sb-section-actions .sb-tabs button{min-width:0;white-space:normal;padding:7px 4px;line-height:1.12}
.sabor-board .sb-add{background:#39e75f;color:#072611;border:2px solid #12832e;font-weight:800;border-radius:12px;min-height:44px;box-shadow:0 2px 0 #12832e}
.sabor-board .sb-add-top{flex:1;min-width:0;padding:7px 4px;font-size:14px}
.sabor-board .sb-add:disabled{background:#a4e9b2;color:#244f2c;box-shadow:none;opacity:1;cursor:wait}
.sabor-board .sb-group .sb-stepper button[data-plus]{background:#39e75f;color:#072611;border-color:#12832e;font-weight:900}
.sabor-board .sb-group .sb-stepper button[data-minus]{background:#ed5b58;color:#260504;border-color:#a42b29;font-weight:900}
.sabor-board .sb-group .sb-stepper button:disabled{opacity:.42;cursor:default}
@media(max-width:600px){.sabor-board .sb-section-actions{gap:4px}.sabor-board .sb-section-actions .sb-tabs{gap:4px}.sabor-board .sb-section-actions .sb-tabs button,.sabor-board .sb-add-top{font-size:12px}}
