.wf-nav{display:flex;gap:6px}.wf-page{width:min(1180px,96vw);height:90dvh;max-width:96vw;padding:24px;overflow:auto}.wf-page>.check-heading{position:sticky;top:-24px;background:var(--paper);padding:16px 0;z-index:4}.wf-page>.check-heading h2{font-size:20px;letter-spacing:-.3px;margin:0}.wf-page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}.wf-page-actions label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.wf-page-actions select{width:auto;max-width:230px}.wf-page-actions button{font-size:12px}.wf-page table{width:100%;border-collapse:collapse;font-size:13px}.wf-page th{font-size:11px;color:var(--muted);font-weight:600;background:var(--paper2)}.wf-page td,.wf-page th{padding:13px 10px;text-align:start;border-bottom:1px solid var(--line)}.wf-page td small{display:block;color:var(--muted);margin-top:5px}.wf-page tr[data-invoice]{cursor:pointer}.wf-page tr.selected{background:var(--soft)}.wf-table-scroll{overflow:auto;max-height:67dvh}.wf-archive{display:grid;grid-template-columns:35% minmax(0,1fr);gap:24px}.wf-tickets{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.wf-ticket{padding:20px;background:var(--paper2);border:1px solid var(--line);border-top:3px solid var(--accent);border-radius:13px}.wf-ticket.rush{border-top-color:var(--danger)}.wf-ticket h3{font-size:12px;color:var(--muted);font-weight:500;margin:0 0 16px;line-height:1.6}.wf-ticket>strong{font-size:20px;line-height:1.45}.wf-ticket p{margin:8px 0;font-size:13px}.wf-ticket small{color:var(--muted);font-size:11px}.wf-ticket button{width:100%;margin-top:18px;background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.wf-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.wf-metrics>div{padding:20px;border:1px solid var(--line);background:var(--paper2);border-radius:12px;font-size:12px;color:var(--muted)}.wf-metrics strong{display:block;font-size:25px;margin-top:10px;color:var(--ink)}.wf-muted{font-size:12px;color:var(--muted);line-height:1.6}.wf-low{background:var(--soft)}#wf-fields{display:grid;gap:14px;max-height:62dvh;overflow:auto;padding:3px}#wf-fields label{display:grid;gap:5px}#wf-fields .wf-check{display:flex;align-items:center;gap:10px}#wf-fields .wf-check input{width:20px;height:20px;min-height:20px}fieldset{border:1px solid var(--line);border-radius:11px;padding:14px;min-width:0}legend{font-size:13px;color:var(--gold);padding:0 7px}.wf-mod-new{display:grid;grid-template-columns:75px minmax(0,1fr) 70px 44px;gap:5px}#wf-command-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}#wf-commands{width:min(580px,95vw)}#wf-commands button{min-height:55px;font-size:13px}#wf-command-close{display:block;margin-inline-start:auto;margin-bottom:12px}#wf-print{display:none}.command-pending #logout{pointer-events:none;opacity:.4}
#wf-review{width:min(950px,96vw);height:90dvh;padding:24px}.wf-review-header{display:flex;align-items:center;justify-content:space-between;position:sticky;top:-24px;padding:16px 0;background:var(--paper);border-bottom:1px solid var(--line);z-index:3}.wf-review-header>strong{letter-spacing:3px;color:var(--gold);font-size:13px}.wf-review-line{display:grid;grid-template-columns:1fr auto;gap:12px;padding:24px 0;border-bottom:1px solid var(--line);font-size:24px}.wf-review-line p{grid-column:1/-1;font-size:16px;margin:0;color:var(--muted)}.wf-review-total{display:flex;justify-content:space-between;font-size:28px;font-weight:700;padding:24px 0}
.rm-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.rm-tabs button{font-size:12px}#rm-tabs{padding-bottom:16px;border-bottom:1px solid var(--line)}#rm-tabs button[aria-pressed=true]{background:var(--soft);border-color:var(--green)}#rm-content article{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:16px 0;border-bottom:1px solid var(--line)}#rm-content article>div:first-child{flex:1;min-width:140px}#rm-content article>span{overflow-wrap:anywhere}#rm-content article button{font-size:12px}#rm-content small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin-top:5px}#rm-fields{display:grid;gap:14px}#rm-fields label,#rm-sales label,#rq-form label{display:grid;gap:6px}#rm-fields fieldset{display:flex;gap:14px;flex-wrap:wrap}#rm-fields fieldset>label{flex:1;min-width:120px}#rm-fields .rm-check{display:flex;align-items:center}#rm-fields .rm-check input{width:20px}#rm-form-dialog{width:min(590px,94vw)}#rm-sales{display:flex;gap:12px;flex-wrap:wrap;align-items:end}#rm-content{min-width:0;overflow-x:auto}#recipient-signature{display:block;width:100%;height:180px;background:white;border:1px solid #aaa;border-radius:10px;touch-action:none}
#rq-view{max-width:960px;margin:auto}#rq-title{font-size:24px;margin:8px 0 22px}#rq-form{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}#rq-form>label{max-width:260px;color:var(--muted);font-size:12px}#rq-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin:22px 0}#rq-items>label{background:var(--paper2);border:1px solid var(--line);padding:15px;border-radius:12px;font-size:14px;font-weight:600}#rq-items .rq-stepper{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:7px;align-items:center;margin-top:6px;direction:ltr}#rq-items input{min-width:0;text-align:center;margin:0;font-size:18px;font-weight:650}#rq-items button{font-size:22px;padding:6px}.rq-submit-bar{display:flex;gap:8px;position:sticky;bottom:0;background:var(--paper);padding-top:10px}#rq-submit{flex:1}#rq-reload{font-size:12px;flex:none}#rq-history h3{font-size:15px}.rq-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 22px}.rq-filters label{display:grid;gap:6px;color:var(--muted);font-size:12px}.rq-filters input{grid-column:1/-1}
.rq-list{display:grid;gap:16px}#rm-content .rq-list article,.rq-list article{display:block;border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--paper2);box-shadow:var(--shadow)}.rq-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.rq-card-head h3{margin:0!important;font-size:16px;line-height:1.5}.rq-badge{font-size:11px;padding:6px 9px;border-radius:7px;white-space:nowrap;background:var(--soft);color:var(--green);font-weight:700}.rq-card-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0;font-size:13px;color:var(--muted)}.rq-card-total .money{font-size:18px;font-weight:700;color:var(--ink)}.rq-detail{border-top:1px solid var(--line);padding-top:12px}.rq-detail summary{cursor:pointer;font-size:12px;color:var(--green);padding:6px 0;font-weight:650}.rq-table-wrap{overflow:auto}.rq-detail table{min-width:340px;margin:12px 0}.rq-files>div{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.rq-files a{overflow-wrap:anywhere;color:var(--green)}.rq-files button{min-height:40px}.rq-list .rm-tabs{margin:16px 0 0}.rq-list .rm-tabs button{flex:1}.rq-list [data-rm=accept],.rq-list [data-rm=purchase],.rq-list [data-rm=deliver]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
@media(max-width:700px){.wf-page{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:16px}.wf-page>.check-heading{top:-16px;padding:12px 0;flex-wrap:wrap;gap:10px}.wf-page>.check-heading h2{font-size:19px;flex:1;min-width:200px}.wf-page>.check-heading>button:last-child{min-width:40px;padding:8px}.ux-tools{margin-inline-start:0}.wf-page-actions{gap:8px}.wf-page-actions label{flex:1}.wf-page-actions select{max-width:100%}.wf-tickets{grid-template-columns:1fr}.wf-ticket{padding:18px}.wf-archive{grid-template-columns:1fr}.wf-metrics{grid-template-columns:repeat(2,1fr);gap:10px}.wf-metrics>div{padding:15px}.wf-metrics strong{font-size:22px}#wf-command-list{grid-template-columns:repeat(2,1fr)}.wf-review-line{font-size:19px}.wf-review-line p{font-size:14px}#rm-tabs{overflow:auto;flex-wrap:nowrap;white-space:nowrap}#rm-tabs button{flex:none}.wf-table-scroll{max-height:65dvh}#rm-sales{display:grid;grid-template-columns:1fr 1fr}#rm-form-dialog{width:100vw;max-width:100vw;max-height:96dvh;padding:18px}#rm-content .rq-list article,.rq-list article{padding:16px}.rq-card-head{flex-wrap:wrap}.rq-badge{font-size:10px}.rq-detail table{font-size:12px}.rq-detail th,.rq-detail td{padding:10px 7px}.rq-filters{gap:8px}#rq-title{font-size:22px;line-height:1.4}#rq-form{padding:16px}#rq-items{grid-template-columns:1fr}.rq-submit-bar{bottom:-1px;padding-bottom:8px}.rq-list .rm-tabs button{flex:1 1 100%}.rm-tabs button{font-size:12px}#rq-view>.rm-tabs{display:grid;grid-template-columns:1fr 1fr}.wf-mod-new{grid-template-columns:65px minmax(0,1fr) 60px 40px}}
@media(pointer:coarse){button{min-height:46px}input,select,textarea{font-size:16px!important}.order-actions button{min-height:44px}#wf-actions button{min-height:44px}}
@media print{body>*{display:none!important}body>#wf-print{display:block!important;color:#000;background:#fff;font:12px Arial;padding:10mm}#wf-print table{width:100%;border-collapse:collapse}#wf-print th,#wf-print td{padding:4px;text-align:start;border-bottom:1px solid #ccc}#wf-print .money{color:#000}#wf-print button{display:none}#wf-print .dirham{background-color:#000!important;print-color-adjust:exact}}
@media(max-width:700px){.wf-page>.check-heading h2{min-width:0;font-size:18px}.wf-page>.check-heading{flex-wrap:nowrap}.ux-tools{gap:4px}.ux-tools button{min-height:36px;padding:6px 8px;font-size:11px}.wf-page>.check-heading>button:last-child{min-width:34px;min-height:36px;padding:6px}.header-actions{max-width:70%}body[data-role=requisition] #shift-label,body[data-role=purchasing] #shift-label,body[data-role=kitchen] #shift-label{display:none}}

.required-options{grid-column:1/-1;min-width:0}.required-options>p{font-size:12px;color:var(--muted);line-height:1.6}.required-option-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 40px;gap:8px;align-items:end;margin:10px 0}.required-option-row button{min-height:44px}
.choice-dialog{width:min(560px,calc(100vw - 24px));max-height:90dvh}.choice-dialog h2{margin-top:0}.choice-dialog p{color:var(--muted)}#choice-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-block:18px}.choice-option{display:flex;align-items:center;gap:10px;padding:16px;min-height:60px;border:1px solid var(--line);border-radius:12px;background:var(--paper2);cursor:pointer}.choice-option:has(input:checked){border-color:var(--gold);background:var(--soft);box-shadow:inset 0 0 0 1px var(--gold)}.choice-option input{width:20px;height:20px;accent-color:var(--gold);flex:none}.choice-option span{overflow-wrap:anywhere}.choice-dialog .dialog-actions{display:flex;gap:10px}.choice-dialog .dialog-actions button{flex:1}.choice-dialog .dialog-actions .primary{width:auto}

.prepared-printers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.prepared-printer{padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--paper2);display:grid;gap:14px}.prepared-printer h3{margin:0}.prepared-printer input{direction:ltr;text-align:left}.prepared-printer small{color:var(--muted)}.print-service-details{margin-top:22px}.item-route-select{position:relative;min-width:180px;max-width:260px;align-self:center}.item-route-select>summary{padding:12px;border:1px solid var(--line);border-radius:9px;cursor:pointer;min-height:44px;background:var(--paper2)}.item-route-options{position:absolute;z-index:5;top:100%;inset-inline-start:0;min-width:230px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow);display:grid;gap:5px}.item-route-options label{display:flex;align-items:center;gap:10px;min-height:40px}.item-route-options input{width:18px;height:18px;accent-color:var(--gold)}.item-route-options button{margin-top:8px;background:var(--accent);color:var(--accent-ink)}
@media(max-width:1000px){.prepared-printers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.prepared-printers{grid-template-columns:1fr}.item-route-select{width:100%;max-width:none}.item-route-options{position:static;margin-top:5px}}

/* Department requests: independent produce/general lists and mandatory preview. */
#rq-items{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}
#rq-items .rq-lane{min-width:0;border:1px solid var(--line);border-radius:14px;background:var(--paper2);padding:16px}
#rq-items .rq-lane h2{font-size:18px;margin:0 0 14px;line-height:1.4}
#rq-items .rq-search-label{font-size:12px;color:var(--muted);margin-bottom:6px}
#rq-items [data-rq-search]{width:100%;text-align:start;font-size:16px;font-weight:400}
#rq-items [data-rq-count]{display:block;margin:10px 0;color:var(--muted);font-size:12px}
#rq-items .rq-lane-items{display:grid;gap:10px;max-height:52dvh;overflow-y:auto;overscroll-behavior:contain;padding:2px}
#rq-items .rq-item{min-width:0;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:10px}
#rq-items .rq-item>label{font-size:14px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
#rq-items .rq-item small{color:var(--muted);font-size:12px;font-weight:400}
#rq-items [hidden]{display:none!important}
#rq-items .rq-stepper button{min-height:44px}
.rq-preview-notice{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--soft);line-height:1.6}
.rq-preview h3{font-size:17px;margin:18px 0 8px}
.rq-preview ul{list-style:none;padding:0;margin:0}
.rq-preview li{display:flex;gap:14px;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding:12px 0;line-height:1.5}
.rq-preview li span{min-width:0;overflow-wrap:anywhere}.rq-preview li strong{white-space:nowrap}
#rm-form:has(.rq-preview)>.dialog-actions{position:sticky;bottom:-18px;background:var(--paper);padding:12px 0;z-index:1}
@media(max-width:700px){#rq-items{grid-template-columns:1fr}#rq-items .rq-lane{padding:12px}#rq-items .rq-lane-items{max-height:42dvh;min-height:70px}#rm-form:has(.rq-preview)>.dialog-actions{flex-wrap:wrap}#rm-form:has(.rq-preview)>.dialog-actions button{flex:1;min-height:46px}}
@media(prefers-reduced-motion:reduce){#rq-items button{transition:none}}

/* Cashier settlement: one consistent touch layout across devices. */
.wf-tender-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;padding:16px;border:1px solid #897443;border-radius:14px;min-width:0}.wf-tender-row label{min-width:0}.wf-tender-row input,.wf-tender-row select{box-sizing:border-box;max-width:100%;width:100%;min-height:44px;font-size:16px}.wf-tender-row .wf-check{grid-column:1/-1}.wf-tender-row .wf-check input{width:auto;min-height:24px}.wf-tender-row legend{padding:0 8px}#wf-tender-summary{font-weight:700;padding:12px 0}#wf-tender-add{min-height:44px}@media(max-width:480px){.wf-tender-row{grid-template-columns:minmax(0,1fr)}}

.wf-tender-row .wf-payment-amount{grid-column:1/-1;font-weight:700}.wf-payment-amount input{font-size:24px;font-weight:700;border:2px solid var(--accent,#d5b676);min-height:54px}.wf-bank-fee{grid-column:1/-1;font-size:13px}.wf-bank-fee summary{cursor:pointer;padding:8px 0}.wf-bank-fee p{color:var(--muted);line-height:1.5}#wf-tender-summary{padding:12px;border:1px solid var(--accent,#d5b676);border-radius:10px;line-height:1.6}

#wf-tender-summary{position:sticky;top:0;z-index:2;background:var(--paper,#1b3028);font-size:14px}

/* Independent branches share one physical table. */
#wf-form-dialog.wf-split-dialog{width:min(1240px,96vw);max-width:96vw}
.wf-split-dialog #wf-fields{display:block;max-height:70dvh}
.split-toolbar{display:flex;align-items:center;gap:14px;margin:12px 0;flex-wrap:wrap}
.split-columns{display:flex;gap:14px;overflow-x:auto;align-items:stretch;padding:4px 2px 14px;scroll-snap-type:x proximity}
.split-column{flex:1 0 230px;min-width:230px;max-width:440px;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:12px;background:var(--paper2);overflow:hidden;scroll-snap-align:start}
.split-column header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px;border-bottom:1px solid var(--line)}
.split-column header strong{font-size:24px;color:var(--gold)}
.split-column-items{min-height:240px;padding:10px;display:grid;gap:10px;align-content:start}
.split-choice{border:1px solid var(--line);border-radius:9px;padding:12px;display:grid;gap:8px;background:var(--paper)}
.split-choice.is-selected{border-color:var(--gold);background:var(--soft)}
.split-choice .wf-check{cursor:pointer;min-height:44px}
.split-choice input[type=number]{max-width:100px}
.split-move{margin:10px;width:calc(100% - 20px);font-size:13px}
.branch-card{border-style:dashed!important}.branch-card strong{color:var(--gold)}
.branch-lines p{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.branch-balance{font-size:22px;font-weight:700}
#wf-branch-pay{background:var(--accent);color:var(--accent-ink)}
@media(max-width:600px){.split-column{flex-basis:210px;min-width:210px}.split-column header{padding:12px}.split-column-items{min-height:200px}}

/* UI165: scoped restaurant menu cards */
#rm-content .rm-menu-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:18px}#rm-content .rm-menu-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:12px}#rm-content .rm-menu-toolbar input{margin:0;min-height:46px;width:100%}#rm-content .rm-menu-toolbar>button{min-height:46px;background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:650}
#rm-menu-count.rm-menu-count{margin:14px 0 10px;font-size:12px;color:var(--muted)}#rm-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-bottom:24px}
#rm-content #rm-items .rm-menu-card{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--paper2);min-width:0;box-shadow:0 3px 12px #00000008}
#rm-content #rm-items .rm-item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex:none;min-width:0}#rm-items .rm-item-name{min-width:0;flex:1}#rm-items .rm-item-name strong{display:block;font-size:17px;line-height:1.5;overflow-wrap:anywhere}#rm-items .rm-item-name small{font-size:11px;margin-top:3px;line-height:1.4;color:var(--muted)}#rm-items .rm-item-price{font-size:18px;font-weight:700;color:var(--ink);padding-top:3px;flex:none}
#rm-items .rm-item-status{display:flex;flex-wrap:wrap;gap:6px}#rm-items .rm-status{border:1px solid var(--line);border-radius:7px;padding:4px 8px;font-size:11px;line-height:1.5;color:var(--muted);background:var(--paper)}#rm-items .rm-status.is-hidden{border-color:var(--accent);color:var(--ink)}#rm-items .rm-status.is-unavailable{color:var(--danger);border-style:dashed}
#rm-items .rm-item-routing{display:grid;gap:5px}#rm-items .rm-item-routing>span{font-size:11px;color:var(--muted)}#rm-items .item-route-select{width:100%;max-width:none;min-width:0;align-self:stretch}#rm-items .item-route-select>summary{background:var(--paper);font-size:13px;line-height:1.5;padding:10px 12px;min-height:44px;box-sizing:border-box}#rm-items .item-route-options{position:static;min-width:0;box-shadow:none;margin-top:6px;background:var(--paper);max-height:330px;overflow:auto}#rm-items .item-route-options input{flex:none}
#rm-items .rm-item-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:auto}#rm-items .rm-item-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:12px;border-top:1px solid var(--line)}#rm-content #rm-items .rm-item-actions button,#rm-content #rm-items .rm-item-controls button{width:100%;min-height:44px;margin:0;padding:9px 6px;border-radius:9px;font-size:12px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;font-weight:600;background:var(--paper)}
#rm-items .rm-item-controls [data-rm=guest-visibility]{grid-column:1/-1}#rm-items .rm-item-controls [data-rm=guest-visibility][aria-pressed=true]{border-color:var(--accent);background:var(--soft);color:var(--ink)}#rm-items .rm-item-controls [data-rm=archive]{color:var(--danger)}#rm-items .rm-menu-empty{grid-column:1/-1;text-align:center;padding:32px;color:var(--muted)}
@media(min-width:1400px){#rm-content #rm-items .rm-menu-card{padding:20px;gap:16px}}
@media(max-width:759px){#rm-items{grid-template-columns:minmax(0,1fr);gap:12px}#rm-content #rm-items .rm-menu-card{padding:15px;gap:12px}#rm-items .rm-item-name strong{font-size:16px}#rm-items .rm-item-price{font-size:17px}#rm-content .rm-menu-toolbar{gap:8px}#rm-content .rm-menu-toolbar>button{padding:9px 12px;font-size:12px}}
@media(max-width:360px){#rm-content .rm-menu-toolbar{grid-template-columns:1fr}#rm-items .rm-item-heading{gap:8px}#rm-items .rm-item-price{font-size:15px}}

/* Integrated keyboard styles: keep in sync with pos-keyboard.css. */
#pos-keyboard{--pos-keyboard-ready:1;position:fixed;inset:auto 0 0;margin:0 auto;width:min(1100px,100%);max-width:100%;box-sizing:border-box;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;background:var(--paper);color:var(--ink);box-shadow:0 -12px 45px #0005;z-index:2147483000;overflow:auto;max-height:62dvh;font-family:inherit;touch-action:manipulation;}
#pos-keyboard[hidden]{display:none!important}#pos-keyboard::backdrop{background:transparent;pointer-events:none}
#pos-keyboard button{font-family:inherit;cursor:pointer;user-select:none;-webkit-user-select:none;touch-action:manipulation;margin:0;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--paper2);color:var(--ink);box-shadow:0 2px 0 #0003;transition:background .08s,transform .08s;padding:8px;line-height:1.15}
#pos-keyboard button:active{background:var(--gold,#d7b570);color:#12251e;transform:translateY(2px);box-shadow:none}#pos-keyboard button:focus-visible{outline:3px solid var(--gold,#d7b570);outline-offset:1px}
#pos-keyboard .pk-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:5px;direction:inherit}#pos-keyboard .pk-caption{font-size:13px;font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#pos-keyboard .pk-close{width:44px;height:32px;min-height:32px;font-size:24px;padding:0;box-shadow:none}
#pos-keyboard .pk-preview{min-height:28px;max-height:44px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;border-inline-start:3px solid #d7b570;padding:3px 9px;margin-bottom:8px;font-size:18px;text-align:start;color:var(--ink)}
#pos-keyboard .pk-row,#pos-keyboard .pk-bottom{display:flex;justify-content:center;gap:7px;margin-top:7px}#pos-keyboard .pk-row .pk-key{flex:1;min-height:48px;font-size:22px;font-weight:600}#pos-keyboard .pk-row .pk-function{flex:1.35;font-size:17px}
#pos-keyboard .pk-bottom .pk-key{flex:1;min-height:44px;font-size:14px;font-weight:600}#pos-keyboard .pk-bottom .pk-space{flex:3}#pos-keyboard .pk-bottom .pk-done{flex:1.5;background:#d7b570;color:#13281f;border-color:#d7b570}
#pos-keyboard[data-mode=number]{width:min(480px,100%)}#pos-keyboard .pk-numbers{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}#pos-keyboard .pk-numbers button{min-height:48px;font-size:24px;font-weight:650}
#pos-keyboard .pk-quick{display:flex;gap:7px;overflow-x:auto;padding-bottom:2px}#pos-keyboard .pk-quick button{white-space:nowrap;min-height:34px;font-size:12px;color:var(--muted)}
.pos-kbd-target{outline:2px solid #d7b570!important;outline-offset:2px}html.pos-kbd-open{scroll-padding-bottom:calc(var(--pos-kbd-height,340px) + 20px)}html.pos-kbd-open body{padding-bottom:var(--pos-kbd-height,340px)}
dialog.pos-kbd-host[open]{top:0!important;bottom:auto!important;margin:12px auto!important;max-height:calc(100dvh - var(--pos-kbd-height,340px) - 24px)!important;height:auto!important;overflow:auto!important;scroll-padding-block:12px}
html.pos-kbd-open #entry-dialog.pos-kbd-host #entry-pad,html.pos-kbd-open #login:has(.pos-kbd-target) #pin-pad{display:none!important}
@media(min-width:900px) and (min-height:650px){html.pos-kbd-open body[data-view=cashier] #shell:not([hidden]){height:calc(100dvh - var(--pos-kbd-height,340px))!important;min-height:0!important}html.pos-kbd-open body[data-view=cashier] main{min-height:0!important}}
@media(max-width:600px){#pos-keyboard{padding:8px 5px calc(8px + env(safe-area-inset-bottom));border-radius:15px 15px 0 0}#pos-keyboard .pk-row,#pos-keyboard .pk-bottom{gap:3px;margin-top:5px}#pos-keyboard .pk-row .pk-key{padding:4px 1px;min-height:43px;font-size:20px;border-radius:7px}#pos-keyboard .pk-row .pk-function{font-size:14px;flex:1.1}#pos-keyboard .pk-bottom .pk-key{padding:5px 2px;font-size:11px;min-height:42px}#pos-keyboard .pk-bottom .pk-space{flex:2}#pos-keyboard .pk-preview{font-size:16px;margin-bottom:5px}#pos-keyboard .pk-numbers button{min-height:45px}}
@media(max-height:520px){#pos-keyboard{max-height:58dvh;padding-block:5px}#pos-keyboard .pk-preview,#pos-keyboard .pk-quick{display:none}#pos-keyboard .pk-row .pk-key,#pos-keyboard .pk-numbers button{min-height:32px;font-size:18px}#pos-keyboard .pk-bottom .pk-key{min-height:32px}#pos-keyboard .pk-row,#pos-keyboard .pk-bottom{margin-top:3px}}
@media print{#pos-keyboard{display:none!important}html.pos-kbd-open body{padding-bottom:0}}

/* UI165: uncluttered phone controls */
#pos-keyboard .pk-mobile-tools{display:none}#pos-keyboard .pk-caption{min-width:0;flex:1}
@media(max-width:600px){
 #pos-keyboard{padding:9px 7px calc(9px + env(safe-area-inset-bottom));width:100%;max-width:100vw;border-radius:18px 18px 0 0;border-width:1px 0 0}
 #pos-keyboard .pk-head{gap:7px;margin-bottom:7px}#pos-keyboard .pk-caption{font-size:12px}#pos-keyboard .pk-mobile-tools{display:flex;gap:6px}#pos-keyboard .pk-mobile-tools button{min-height:38px;padding:7px 10px;font-size:12px;box-shadow:none}#pos-keyboard .pk-close{width:38px;min-height:38px;height:38px}
 #pos-keyboard .pk-row{gap:4px;margin-top:6px}#pos-keyboard .pk-row .pk-key{min-height:45px;border-radius:8px;font-size:20px}#pos-keyboard .pk-row .pk-function{font-size:17px}
 #pos-keyboard .pk-bottom{gap:6px;margin-top:8px}#pos-keyboard .pk-bottom>[data-key=left],#pos-keyboard .pk-bottom>[data-key=right],#pos-keyboard .pk-bottom>[data-key=next],#pos-keyboard[data-mode=text] .pk-bottom>[data-key=clear]{display:none}
 #pos-keyboard .pk-bottom .pk-key{min-height:46px;font-size:13px;padding:8px 5px;flex:0 0 54px}#pos-keyboard .pk-bottom .pk-space{flex:1;min-width:55px}#pos-keyboard .pk-bottom .pk-done{flex:0 0 66px}
 #pos-keyboard[data-mode=number] .pk-mobile-tools>[data-key=clear]{display:none}#pos-keyboard[data-mode=number] .pk-bottom .pk-key{flex:1}#pos-keyboard .pk-numbers{gap:7px}#pos-keyboard .pk-numbers button{min-height:49px;border-radius:10px}
 #pos-keyboard .pk-preview{font-size:17px;min-height:28px;margin-bottom:7px}#pos-keyboard .pk-quick button{min-height:36px}
}
@media(max-width:600px) and (max-height:520px){#pos-keyboard .pk-row .pk-key,#pos-keyboard .pk-numbers button{min-height:32px}#pos-keyboard .pk-bottom .pk-key,#pos-keyboard .pk-mobile-tools button{min-height:34px}#pos-keyboard .pk-head{margin-bottom:3px}#pos-keyboard .pk-row{margin-top:3px}}

/* Captain table responsibility */
#table-assignments-dialog{width:min(620px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;padding:20px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:18px}
#ta-form{display:grid;gap:14px;min-width:0}#ta-form label{display:grid;gap:8px;min-width:0}#ta-form p{margin:0;line-height:1.7;color:var(--muted);font-size:13px}
#ta-form .ta-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}#ta-form .ta-heading h2{font-size:19px}#ta-form #ta-close{flex:none}
#ta-form #ta-count{color:var(--gold)}#ta-form #ta-error{color:var(--danger)}#ta-current{overflow-wrap:anywhere}#ta-ranges{font-size:17px;min-height:90px}
#ta-form .ta-footer{display:flex;justify-content:flex-end}#ta-save{min-width:180px}
@media(max-width:480px){#table-assignments-dialog{padding:15px}#ta-save{width:100%}.table-toolbar #table-assignments-open{width:100%}}

#ta-form select{min-height:46px!important;height:46px!important}#ta-form #ta-status{color:var(--green)}

/* Captain scope: keep long allocations readable on small screens. */
.table-scope-hint{margin:.5rem 0 0;font-size:.85rem;line-height:1.5;overflow-wrap:anywhere;max-width:100%;opacity:.8}

/* UI169 — grouped restaurant-management navigation */
#rm-page{width:min(1400px,96vw);max-width:96vw;height:min(960px,94dvh);max-height:94dvh;padding:0;overflow:hidden;border-radius:20px}
#rm-page[open]{display:flex;flex-direction:column}
#rm-page>.check-heading{position:relative;inset:auto;flex:none;margin:0;padding:18px 22px;gap:14px;border-bottom:1px solid var(--line);background:var(--paper);flex-wrap:nowrap}
#rm-page>.check-heading h2{min-width:0;flex:1;font-size:21px;line-height:1.4}
#rm-page>.check-heading .ux-tools{order:0;flex:0 0 auto;margin:0;gap:6px}
#rm-page>.check-heading .ux-tools button,#rm-page #rm-close{width:44px;height:44px;min-height:44px;min-width:44px;padding:0;border-radius:12px;display:inline-grid;place-items:center;font-size:16px}
#rm-page>.check-heading .ux-tools [data-ux=language]{width:64px;font-size:13px}
#rm-page .rm-layout{display:grid;grid-template-columns:238px minmax(0,1fr);flex:1;min-height:0;overflow:hidden}
#rm-page #rm-tabs{display:flex;flex-direction:column;flex-wrap:nowrap;gap:24px;align-items:stretch;margin:0;padding:20px 12px;min-width:0;overflow:auto;overscroll-behavior:contain;white-space:normal;border:0;border-inline-end:1px solid var(--line);background:var(--paper2)}
#rm-page .rm-nav-group{margin:0;min-width:0}
#rm-page .rm-nav-group h3{margin:0 10px 8px;color:var(--muted);font-size:11px;line-height:1.5;font-weight:650;letter-spacing:.025em}
#rm-page .rm-nav-items{display:grid;gap:5px}
#rm-page #rm-tabs button{display:flex;align-items:center;gap:11px;width:100%;min-height:46px;flex:none;margin:0;padding:11px 12px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--ink);box-shadow:none;text-align:start;font-size:13px;font-weight:500;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
#rm-page #rm-tabs button svg{width:20px;height:20px;flex:none;color:var(--muted)}
#rm-page #rm-tabs button span{min-width:0}
#rm-page #rm-tabs button:hover{background:var(--soft)}
#rm-page #rm-tabs button[aria-pressed=true]{background:var(--soft);border-color:var(--line);color:var(--green);font-weight:700;box-shadow:inset 3px 0 var(--gold)}
[dir=rtl] #rm-page #rm-tabs button[aria-pressed=true]{box-shadow:inset -3px 0 var(--gold)}
#rm-page #rm-tabs button[aria-pressed=true] svg{color:var(--gold)}
#rm-page #rm-tabs button:focus-visible,#rm-page #rm-nav-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
#rm-page .rm-panel{min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;padding:24px;background:var(--paper)}
#rm-page #rm-section-title{margin:0 0 18px;font-size:23px;line-height:1.4;letter-spacing:-.3px}
#rm-page #rm-content{min-width:0}
#rm-page #rm-content .rm-menu-toolbar{margin-top:0}
#rm-page #rm-nav-toggle{display:none}
@media(min-width:701px) and (max-width:1100px){#rm-page .rm-layout{grid-template-columns:205px minmax(0,1fr)}#rm-page .rm-panel{padding:18px}#rm-page #rm-tabs{padding:18px 8px}#rm-page #rm-tabs button{font-size:12px;padding:10px;gap:9px}#rm-page #rm-items{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){
 #rm-page{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:0}
 #rm-page>.check-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:12px 16px;gap:8px 12px}
 #rm-page>.check-heading h2{grid-column:1;grid-row:1;font-size:18px;min-width:0;margin:0}
 #rm-page #rm-close{grid-column:2;grid-row:1;width:44px;height:44px}
 #rm-page>.check-heading .ux-tools{grid-column:1/-1;grid-row:2;justify-content:flex-start;flex:none}
 #rm-page>.check-heading .ux-tools button{height:40px;min-height:40px}
 #rm-page .rm-layout{display:flex;flex-direction:column}
 #rm-page #rm-nav-toggle{display:flex;flex:none;align-items:center;gap:12px;width:auto;min-height:62px;margin:12px 16px;padding:10px 14px;background:var(--paper2);border:1px solid var(--line);border-radius:13px;text-align:start}
 #rm-page .rm-nav-selection{display:grid;gap:3px;flex:1;min-width:0}
 #rm-page #rm-nav-label{font-size:11px;color:var(--muted)}
 #rm-page #rm-nav-current{font-size:14px;line-height:1.5;color:var(--ink)}
 #rm-page .rm-nav-chevron{font-size:20px;transition:transform .15s}
 #rm-page #rm-nav-toggle[aria-expanded=true] .rm-nav-chevron{transform:rotate(180deg)}
 #rm-page #rm-tabs{display:none;flex:none;max-height:48dvh;border-inline-end:0;border-bottom:1px solid var(--line);padding:4px 16px 16px;gap:16px;background:var(--paper)}
 #rm-page[data-nav-open=true] #rm-tabs{display:flex}
 #rm-page .rm-nav-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 #rm-page .rm-nav-group h3{margin-inline:2px}
 #rm-page #rm-tabs button{height:100%;min-height:58px;padding:10px;font-size:12px;gap:8px;border-color:var(--line);background:var(--paper2)}
 #rm-page #rm-tabs button svg{width:18px;height:18px}
 #rm-page .rm-panel{flex:1;padding:6px 16px max(20px,env(safe-area-inset-bottom));min-height:0}
 #rm-page #rm-section-title{font-size:20px;margin-bottom:14px}
}


/* UI170: bounded menu rendering, full-menu search */
#rm-page .rm-menu-pages{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}#rm-page .rm-menu-pages button{min-height:44px}#rm-page .rm-menu-pages span{font-size:13px;color:var(--muted);direction:ltr}

/* UI171: report filters, responsive summaries and themed calendar. */
#rm-page .rm-report-view{max-width:1100px;margin:0 auto;min-width:0}
#rm-page .rm-report-intro{margin:-8px 0 22px;color:var(--muted);font-size:13px;line-height:1.7}
#rm-page #rm-sales.rm-report-filters{display:block;background:var(--paper2);border:1px solid var(--line);border-radius:17px;padding:20px}
.rm-report-filter-heading,.rm-report-filter-footer,.rm-report-results-heading,.rm-report-table-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rm-report-filter-heading{justify-content:flex-start;margin-bottom:16px;color:var(--gold)}
#rm-page .rm-report-view h4{margin:0;font-size:15px;line-height:1.5;color:var(--ink)}
.rm-report-view svg{width:21px;height:21px;flex:none}
.rm-report-presets{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}
#rm-page .rm-report-presets button{min-height:44px;padding:9px 14px;font-size:12px;border-radius:9px;background:var(--paper);color:var(--muted)}
#rm-page .rm-report-presets button[aria-pressed=true]{background:var(--soft);border-color:var(--green);color:var(--ink)}
.rm-report-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#rm-page .rm-report-fields label,.rm-report-field{display:grid;gap:8px;min-width:0;font-size:12px;color:var(--muted)}
#rm-page .rm-report-fields select,.rm-report-fields .rm-date-trigger{width:100%;min-width:0;min-height:50px;background:var(--paper);border:1px solid var(--line);color:var(--ink);font-size:14px;font-weight:500}
.rm-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:start;padding:11px 12px}
.rm-date-trigger span{min-width:0;overflow-wrap:anywhere;line-height:1.5}.rm-date-trigger svg{color:var(--gold);width:19px;height:19px}
.rm-report-filter-footer{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}
.rm-report-filter-footer>span{font-size:11px;color:var(--muted);line-height:1.6}
#rm-page .rm-report-submit{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 22px;background:var(--accent);color:var(--accent-ink);border-color:var(--accent);flex:none}
.rm-report-status{margin:12px 0 0;font-size:12px;color:var(--muted);line-height:1.6}.rm-report-status:empty{display:none}.rm-report-status[data-error=true]{color:var(--danger)}
.rm-report-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 22px;margin:22px 0;border:1px dashed var(--line);border-radius:16px;text-align:center}
.rm-report-empty>svg{width:38px;height:38px;color:var(--gold);margin-bottom:4px}.rm-report-empty p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}.rm-report-empty.compact{padding:30px 20px}
.rm-report-results-heading{margin-top:26px;flex-wrap:wrap}.rm-report-results-heading>span,.rm-report-table-heading>span{font-size:12px;color:var(--muted)}
.rm-report-notice{font-size:11px;color:var(--muted);margin:8px 0 16px}
.rm-report-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rm-report-metric{border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--paper2);min-width:0}
.rm-report-metric>span{font-size:12px;color:var(--muted)}.rm-report-metric>strong{display:block;margin-top:12px;font-size:clamp(18px,2vw,26px);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.5}
.rm-report-metric.is-net{background:var(--soft);border-color:var(--green)}.rm-report-metric.is-net>span{color:var(--green)}
.rm-report-table-heading{margin:26px 0 12px}.rm-report-table-scroll{overflow:auto;border:1px solid var(--line);border-radius:13px;max-height:55dvh}
#rm-page .rm-report-table{width:100%;border-collapse:collapse;font-size:13px}
#rm-page .rm-report-table th{position:sticky;top:0;background:var(--paper2);z-index:1;font-size:11px;color:var(--muted)}
#rm-page .rm-report-table td,#rm-page .rm-report-table th{padding:14px 12px;text-align:start;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
#rm-page .rm-report-table tbody tr:last-child td{border-bottom:0}
#rm-page .rm-report-table td:last-child{font-weight:650;white-space:nowrap;font-variant-numeric:tabular-nums}
#rm-page .rm-report-table tbody tr:nth-child(even){background:var(--paper2)}
dialog.rm-calendar{width:370px;max-width:calc(100vw - 12px);max-height:calc(100dvh - 24px);padding:20px;margin:auto;overflow:auto;border:1px solid var(--line);border-radius:20px;background:var(--paper);color:var(--ink);box-shadow:0 20px 70px #0005}
dialog.rm-calendar::backdrop{background:#071b1680;backdrop-filter:blur(3px)}
.rm-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.rm-calendar-heading>div>span{color:var(--muted);font-size:11px}.rm-calendar-heading h3{margin:5px 0 0;font-size:20px}
.rm-calendar-heading>button{width:44px;padding:6px;font-size:25px;background:var(--paper2)}
.rm-calendar-selected{margin:18px 0;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--soft);color:var(--ink);font-size:13px;line-height:1.6}
.rm-calendar-month{display:grid;grid-template-columns:44px minmax(0,1fr) 84px 44px;gap:5px;align-items:center;margin-bottom:14px}
.rm-calendar-month>button{padding:5px;font-size:26px;background:var(--paper2)}
.rm-calendar-month select{min-width:0;padding:8px 3px;font-size:13px;min-height:44px;text-align:center}
[dir=rtl] .rm-calendar-month>button{transform:scaleX(-1)}
.rm-calendar-weekdays,.rm-calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}
.rm-calendar-weekdays{margin-bottom:6px}.rm-calendar-weekdays>span{text-align:center;font-size:11px;color:var(--muted);padding:7px 0}
.rm-calendar-days>button{min-width:0;min-height:44px;padding:7px 0;border:1px solid transparent;border-radius:10px;font-size:14px;font-weight:500;background:transparent}
.rm-calendar-days>button[aria-current=date]{border-color:var(--gold);color:var(--gold)}
.rm-calendar-days>button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);font-weight:750}
.rm-calendar-days>button:focus-visible{outline:2px solid var(--gold);outline-offset:0}
.rm-calendar-footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:14px;margin-top:16px}
.rm-calendar-footer button{min-height:44px;font-size:12px}.rm-calendar-footer [data-cal-today]{color:var(--green)}
@media(max-width:1200px){.rm-report-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 #rm-page #rm-sales.rm-report-filters{padding:16px}.rm-report-fields{gap:14px 10px}.rm-report-filter-heading{margin-bottom:12px}
 .rm-report-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px;gap:7px}
 .rm-report-filter-footer{flex-direction:column;align-items:stretch;gap:12px}.rm-report-filter-footer>span{text-align:center;order:2}
 .rm-report-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rm-report-metric{padding:16px}.rm-report-metric.is-net{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px}.rm-report-metric.is-net>strong{margin:0}
 .rm-report-results-heading{align-items:flex-start;flex-direction:column;gap:6px}.rm-report-table-scroll{border:0;max-height:none}
 #rm-page .rm-report-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 #rm-page .rm-report-table,#rm-page .rm-report-table tbody{display:block}
 #rm-page .rm-report-table tr{display:block;border:1px solid var(--line);border-radius:12px;background:var(--paper2);padding:8px 12px;margin-bottom:10px}
 #rm-page .rm-report-table td{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:9px 0;border:0;font-size:12px;text-align:end}
 #rm-page .rm-report-table td::before{content:attr(data-label);color:var(--muted);font-size:11px;font-weight:400;text-align:start;flex:none}
}
@media(max-width:370px){dialog.rm-calendar{padding:10px}.rm-calendar-month{grid-template-columns:44px minmax(0,1fr) 76px 44px}.rm-report-fields .rm-date-trigger{font-size:12px;padding:10px 8px}}


/* Keep Safari selects as full-size themed controls. */
#rm-page .rm-report-fields select,.rm-calendar-month select{appearance:none;-webkit-appearance:none;border-radius:10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23899b92' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-inline-end:30px}
#rm-page .rm-report-fields select{height:50px}
.rm-calendar-month select{height:44px;padding-inline-start:7px;padding-inline-end:20px;background-position:right 5px center}
[dir=rtl] #rm-page .rm-report-fields select{background-position:left 10px center}
[dir=rtl] .rm-calendar-month select{background-position:left 5px center}

/* Receipt preview uses external CSS to respect the application's CSP. */
.thermal-receipt{background:#fff;color:#000;width:72mm;max-width:100%;margin:auto;padding:3mm;font-family:Arial,sans-serif;direction:ltr;box-sizing:border-box}
.pos-receipt-line{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.35;min-height:.6em;font-size:11px;font-weight:400}
.pos-receipt-align-left{text-align:left}.pos-receipt-align-right{text-align:right}.pos-receipt-align-center,.pos-receipt-logo{text-align:center}
.pos-receipt-bold{font-weight:700}.pos-receipt-price{float:right}.pos-receipt-box{border:2px solid #000;padding:3mm;margin-top:3mm;box-sizing:border-box}
.pos-receipt-size-16{font-size:8.0px}.pos-receipt-size-17{font-size:8.5px}.pos-receipt-size-18{font-size:9.0px}.pos-receipt-size-19{font-size:9.5px}.pos-receipt-size-20{font-size:10.0px}.pos-receipt-size-21{font-size:10.5px}.pos-receipt-size-22{font-size:11.0px}.pos-receipt-size-23{font-size:11.5px}.pos-receipt-size-24{font-size:12.0px}.pos-receipt-size-25{font-size:12.5px}.pos-receipt-size-26{font-size:13.0px}.pos-receipt-size-27{font-size:13.5px}.pos-receipt-size-28{font-size:14.0px}.pos-receipt-size-29{font-size:14.5px}.pos-receipt-size-30{font-size:15.0px}.pos-receipt-size-31{font-size:15.5px}.pos-receipt-size-32{font-size:16.0px}.pos-receipt-size-33{font-size:16.5px}.pos-receipt-size-34{font-size:17.0px}.pos-receipt-size-35{font-size:17.5px}.pos-receipt-size-36{font-size:18.0px}.pos-receipt-size-37{font-size:18.5px}.pos-receipt-size-38{font-size:19.0px}.pos-receipt-size-39{font-size:19.5px}.pos-receipt-size-40{font-size:20.0px}


/* Settlement 140: scoped presentation only; existing tender validation/commands retained. */
#wf-form-dialog.wf-settlement-dialog{width:min(1080px,96vw);max-width:96vw;max-height:94dvh;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 100px #0005}
#wf-form-dialog.wf-settlement-dialog #wf-form{display:flex;flex-direction:column;max-height:94dvh;min-height:0}
#wf-form-dialog.wf-settlement-dialog #wf-form-title{flex:none;margin:0;padding:24px 28px 20px;border-bottom:1px solid var(--line);font-size:25px;letter-spacing:-.4px}
#wf-form-dialog.wf-settlement-dialog #wf-fields{display:block;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;padding:20px 28px;scroll-padding:12px}
#wf-form-dialog.wf-settlement-dialog #wf-fields>.wf-muted{margin:0 0 16px;font-size:13px}
#wf-form-dialog.wf-settlement-dialog #wf-tender-summary{position:static;display:grid;grid-template-columns:1.3fr 1.2fr .7fr .8fr;gap:0;padding:0;margin:0 0 22px;border:1px solid var(--line);background:var(--paper2);overflow:hidden}
#wf-tender-summary .wf-pay-metric{display:flex;flex-direction:column;gap:6px;padding:16px;border-inline-end:1px solid var(--line);font-size:12px;font-weight:500;color:var(--muted)}
#wf-tender-summary .wf-pay-metric:last-child{border:0}
#wf-tender-summary .wf-pay-metric strong{color:var(--ink);font-size:25px;font-weight:750;line-height:1.1;direction:ltr;text-align:start;font-variant-numeric:tabular-nums}
#wf-tender-summary .wf-pay-metric:first-child{background:var(--soft)}
#wf-tender-summary .wf-pay-metric:first-child strong{color:var(--gold)}
#wf-form-dialog.wf-settlement-dialog .wf-tender-row{margin:14px 0 20px;padding:20px;border-color:var(--line);border-radius:16px;gap:18px 22px}
#wf-form-dialog.wf-settlement-dialog .wf-tender-row legend{font-size:13px;font-weight:700}
#wf-form-dialog.wf-settlement-dialog .wf-tender-row label{font-size:14px;color:var(--muted);gap:8px}
#wf-form-dialog.wf-settlement-dialog .wf-tender-row input:not([type=checkbox]){min-height:58px;font-size:20px;font-weight:650;padding:13px 16px}
#wf-form-dialog.wf-settlement-dialog .wf-payment-amount{grid-column:auto}
#wf-form-dialog.wf-settlement-dialog .wf-payment-amount input{border-color:var(--gold);font-size:25px}
#wf-form-dialog.wf-settlement-dialog .wf-method-picker{grid-column:1/-1;order:-1;min-width:0}
.wf-method-heading{display:block;font-size:13px;color:var(--muted);margin:0 0 10px}
.wf-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#wf-form-dialog .wf-method-grid button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:62px;padding:12px 8px;border:1px solid var(--line);background:var(--paper2);font-size:16px;font-weight:650;border-radius:12px;line-height:1.2;overflow-wrap:anywhere}
#wf-form-dialog .wf-method-grid button[aria-pressed=true]{background:var(--soft);border:2px solid var(--gold);color:var(--ink)}
.wf-method-grid button[aria-pressed=true]::before{content:"✓";color:var(--gold);font-size:18px}
.wf-other-methods{margin-top:12px}
.wf-other-methods>summary{width:fit-content;cursor:pointer;color:var(--gold);font-size:14px;font-weight:600;min-height:44px;padding:12px 0}
.wf-other-methods .wf-method-grid{padding-top:4px}
#wf-form-dialog .wf-other-methods .wf-method-grid button{font-size:14px;min-height:52px}
#wf-form-dialog.wf-settlement-dialog .wf-change{align-self:end;margin:0;padding:14px 16px;background:var(--soft);border-radius:10px;font-size:18px;font-weight:650;min-height:54px}
#wf-form-dialog.wf-settlement-dialog #wf-tender-add{width:100%;min-height:52px;border:1px dashed var(--gold);background:transparent;color:var(--gold);font-size:15px}
#wf-form-dialog.wf-settlement-dialog .wf-check{padding:12px;background:var(--paper2);border:1px solid var(--line);border-radius:10px;min-height:52px;color:var(--ink)}
#wf-form-dialog.wf-settlement-dialog #wf-form-error{margin:0;padding:0 28px;color:var(--danger);flex:none}
#wf-form-dialog.wf-settlement-dialog #wf-form-error:empty{display:none}
#wf-form-dialog.wf-settlement-dialog .dialog-actions{flex:none;display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2.5fr);margin:0;padding:18px 28px calc(18px + env(safe-area-inset-bottom,0px));background:var(--paper);border-top:1px solid var(--line);box-shadow:0 -8px 24px #0001;gap:14px}
#wf-form-dialog.wf-settlement-dialog .dialog-actions button{min-height:62px;font-size:18px;width:100%;line-height:1.3}
@media(min-width:768px){#wf-form-dialog.wf-settlement-dialog{width:min(1080px,94vw)}#wf-form-dialog.wf-settlement-dialog #wf-fields{min-height:320px}}
@media(max-width:600px){
 #wf-form-dialog.wf-settlement-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:94dvh;border-radius:18px}
 #wf-form-dialog.wf-settlement-dialog #wf-form-title{padding:18px;font-size:21px}
 #wf-form-dialog.wf-settlement-dialog #wf-fields{padding:16px}
 #wf-form-dialog.wf-settlement-dialog #wf-tender-summary{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}
 #wf-tender-summary .wf-pay-metric{padding:12px;border-bottom:1px solid var(--line)}
 #wf-tender-summary .wf-pay-metric strong{font-size:23px}
 #wf-tender-summary .wf-pay-metric:nth-child(2){border-inline-end:0}
 #wf-tender-summary .wf-pay-metric:nth-child(n+3){border-bottom:0}
 #wf-form-dialog.wf-settlement-dialog .wf-tender-row{padding:14px;gap:16px;grid-template-columns:minmax(0,1fr)}
 .wf-method-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #wf-form-dialog .wf-method-grid button{min-height:54px;font-size:15px}
 #wf-form-dialog.wf-settlement-dialog .dialog-actions{padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));gap:10px;grid-template-columns:1fr 2fr}
 #wf-form-dialog.wf-settlement-dialog .dialog-actions button{font-size:15px;min-height:56px;padding:10px}
}

@media(min-width:768px){
 #wf-form-dialog.wf-settlement-dialog #wf-form-title{padding:20px 28px 16px}
 #wf-form-dialog.wf-settlement-dialog #wf-fields{padding:16px 28px}
 #wf-form-dialog.wf-settlement-dialog #wf-tender-summary{margin-bottom:16px}
 #wf-form-dialog.wf-settlement-dialog .wf-tender-row{padding:16px;margin:12px 0 16px;gap:14px 22px}
 #wf-form-dialog.wf-settlement-dialog .wf-tender-row input:not([type=checkbox]){font-size:22px!important}
}

/* Captain handoff146: same-size send/collection buttons, separate cashier review lane. */
#wf-actions .wf-send-stack{display:flex;flex-direction:column;gap:8px;min-width:0}
#wf-actions .wf-send-stack>button{width:100%;box-sizing:border-box;flex:1}
.wf-handoff-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.wf-handoff-methods button[aria-pressed="true"]{background:#d0af70;color:#102820;border-color:#d0af70}
#captain-review-board{margin-top:28px}
#captain-review-board .captain-review-card{background:#4b2a66;color:#fff;border:2px solid #b78ed7;gap:9px}
#captain-review-board .captain-review-card .state{color:#f1e5ff}
[data-theme="light"] #captain-review-board .captain-review-card{background:#f0e5fa;color:#44235f;border-color:#9165b4}
[data-theme="light"] #captain-review-board .captain-review-card .state{color:#5b3975}
.wf-handoff-review{border:1px solid #a780c6;border-radius:14px;padding:16px;margin-bottom:16px}

body[data-role=captain] #wf-actions .wf-send-stack{grid-column:1/-1;grid-row:2}
body[data-role=captain] #wf-actions [data-wf=captain-handoff]{min-height:56px;font-size:16px;background:var(--accent);color:var(--accent-ink);font-weight:750}

/* Settlement history147: local disclosure never recreates active tender inputs. */
.wf-payment-history{margin:0 0 16px;border:1px solid var(--line,#496354);border-radius:14px;background:var(--paper2,#17342d);overflow:hidden}
.wf-payment-history>summary{display:flex;align-items:center;gap:10px;list-style:none;cursor:pointer;min-height:52px;padding:12px 16px;color:var(--ink,#f2f1e8);font-weight:700}
.wf-payment-history>summary::-webkit-details-marker{display:none}
.wf-payment-history>summary:focus-visible{outline:2px solid var(--accent,#d0af70);outline-offset:-4px;border-radius:12px}
.wf-history-count{padding:3px 10px;border-radius:20px;background:var(--paper,#10251e);color:var(--accent,#d0af70);font-size:13px}
.wf-history-chevron{margin-inline-start:auto;font-size:20px}
.wf-payment-history[open] .wf-history-chevron{transform:rotate(180deg)}
.wf-history-content{padding:0 16px 14px;border-top:1px solid var(--line,#496354)}
.wf-history-invoice,.wf-history-note,.wf-history-empty{font-size:12px;color:var(--muted,#b2c0b5);line-height:1.6;overflow-wrap:anywhere}
.wf-history-totals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.wf-history-totals>span{font-size:12px;color:var(--muted,#b2c0b5)}
.wf-history-totals strong{display:block;font-size:20px;color:var(--ink,#f2f1e8);margin-top:5px}
.wf-history-list{max-height:280px;overflow:auto;overscroll-behavior:contain;display:grid;gap:9px}
.wf-history-row{padding:12px;border:1px solid var(--line,#496354);border-radius:10px;background:var(--paper,#10251e);min-width:0}
.wf-history-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;font-size:14px}
.wf-history-amount{white-space:nowrap;color:var(--accent,#d0af70)}
.wf-history-reference{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;margin-top:10px;font-size:12px}
.wf-history-reference>span,.wf-history-row time{color:var(--muted,#b2c0b5)}
.wf-history-reference b{font-family:ui-monospace,monospace;font-weight:500;overflow-wrap:anywhere;text-align:end;user-select:text}
.wf-history-row time{display:block;font-size:11px;margin-top:8px}
.wf-history-note{margin-bottom:0}
@media(max-width:480px){.wf-history-content{padding-inline:12px}.wf-history-reference{grid-template-columns:1fr;gap:5px}.wf-history-reference b{text-align:start}.wf-history-heading{font-size:13px}}

/* SETTLEMENT212: keep payment controls inside the visible area during native
   keyboard resize/pan. Only #wf-fields scrolls; header/actions stay in flow. */
#wf-form-dialog.wf-settlement-dialog[open]{
 top:var(--settlement-top212,3dvh);bottom:auto;margin:0 auto;
 height:var(--settlement-height212,94dvh);max-height:var(--settlement-height212,94dvh);
 box-sizing:border-box;overflow:hidden;
}
#wf-form-dialog.wf-settlement-dialog #wf-form{
 height:100%;max-height:100%;min-height:0;overflow:hidden;
}
#wf-form-dialog.wf-settlement-dialog #wf-fields{
 flex:1 1 0%;min-height:0;max-height:none;overflow:auto;
 overflow-anchor:none;scroll-behavior:auto;
}
#wf-form-dialog.wf-settlement-dialog .dialog-actions{
 position:static;flex:none;bottom:auto;
}
#wf-form-dialog.wf-settlement-dialog #wf-credit-approval[hidden]{display:none!important}
@media(max-height:550px){
 #wf-form-dialog.wf-settlement-dialog #wf-form-title{padding:10px 16px;font-size:19px}
 #wf-form-dialog.wf-settlement-dialog .dialog-actions{padding:8px 16px;gap:10px}
 #wf-form-dialog.wf-settlement-dialog .dialog-actions button{min-height:44px;font-size:15px}
}
