.password-control{display:flex;align-items:center;gap:8px;min-width:0}.password-control input{min-width:0;flex:1}.password-eye{flex:none;padding:10px 14px;min-height:44px}.portal-columns,.column-chooser{align-self:end!important;position:relative;max-width:100%;border:0!important;padding:0!important}.sab-columns-panel{position:fixed;z-index:1500;width:280px;overflow:auto;padding:16px;background:#fffdf9;color:#282528;border:1px solid #e3dcd6;border-radius:14px;box-shadow:0 12px 36px #24131d22}.sab-columns-panel .column-options{position:static!important;box-shadow:none!important;border:0!important;padding:0!important;min-width:0!important;width:auto!important}.sab-columns-panel label{display:flex;gap:12px;margin:0;padding:10px 0;align-items:center}.sab-columns-panel label input{width:20px;flex:none}.portal-columns:not([open]) .sab-columns-panel,.column-chooser:not([open]) .sab-columns-panel{display:none}.portal-filters{align-items:end;gap:18px}.portal-filters label{margin:0}.portal-filters .date-trigger,.portal-filters input{min-height:44px;padding:10px 12px!important}.page-savebar .actions{align-items:center;gap:16px}.page-savebar .actions>*{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.page-savebar{gap:20px;padding:20px 28px!important}.recipe-type-picker,.builder-type-picker{align-items:end;gap:16px}.appearance-dialog{width:min(460px,calc(100vw - 32px));padding:28px;border:1px solid #ddd;border-radius:20px}.appearance-dialog form{display:grid;gap:20px}.appearance-dialog label{display:grid;gap:10px}.appearance-dialog input[type=color]{width:100%;height:44px}.font-levels{display:flex;justify-content:space-between;font-size:16px}.personal-visuals body{background:var(--sab-page)!important;color:var(--sab-font)!important;font-size:calc(16px * var(--sab-scale))}.personal-visuals :is(input,select,textarea,button){font-size:inherit}.personal-visuals :is(.sidebar,.rail){background:var(--sab-ribbon)!important}.personal-visuals :is(.workspace,.owner-main,main){background:var(--sab-page)}.sab-dark :is(.card,.portal-stat,.portal-filters,.topbar,.ticket,.product-card,dialog,.sab-columns-panel,.select-menu,.date-popover,.portal-link,input,textarea,select,.select-trigger){background:#242424!important;color:#f0f0f0!important;border-color:#4a4a4a!important}.sab-dark :is(h1,h2,h3,th,td,p,small,label,.muted,.subtle){color:inherit}.sab-dark :is(thead,.product-table,.page-savebar){background:#242424!important;color:#f0f0f0!important}.pagination{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:22px 0}.pagination select{width:auto}.record-link{text-decoration:underline;text-underline-offset:4px}.serving-products{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.choice-add{display:flex;align-items:flex-end!important;gap:16px!important;flex-wrap:wrap}.choice-add>.field,.choice-add>label,.choice-add>.select-field{flex:1 1 240px;margin:0!important}.choice-add>button{flex:0 0 auto;min-height:48px;margin:0!important}.choice-add .select-trigger{min-height:48px}.date-popover{font-size:14px!important;max-width:min(320px,calc(100vw - 24px))}.preview-counts+ p{margin-block:24px}.product-table td>.btn+.btn{margin-inline-start:8px}
#sab-date-picker{width:290px;padding:12px}#sab-date-picker .sab-calendar-header{margin-bottom:10px}button.sab-date-trigger{min-height:44px;padding:6px 8px!important;font-size:12px!important;gap:6px;white-space:nowrap}.personal-visuals:not(.sab-dark) :is(.card,.portal-stat,.portal-intro,.product-detail,.portal-list){color:var(--sab-font)}

.sab-columns-panel label.check{min-height:36px!important;margin:0!important;padding:6px 8px!important;gap:10px!important}.sab-columns-panel .column-options{gap:4px!important}

.appearance-dialog{padding:24px!important;overflow:auto;max-height:calc(100dvh - 32px)}
.appearance-dialog form{display:grid!important;gap:18px!important;margin:0!important}
.appearance-dialog h2,.appearance-dialog p{margin:0!important}
.appearance-dialog label{margin:0!important;gap:8px!important}
.appearance-dialog label.check{display:flex!important;align-items:center;min-height:40px}
.appearance-dialog input[type=color]{height:40px;min-height:40px;padding:4px}
.appearance-dialog .actions{margin:0!important;padding-top:8px;justify-content:flex-end;gap:12px}
.font-choice{border:0;padding:0;margin:0;min-width:0}.font-choice legend{font-size:14px;margin-bottom:12px}
.font-levels{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.font-levels label{position:relative;display:grid!important;place-items:center;border:1px solid #d9d1ca;border-radius:10px;padding:8px;cursor:pointer;min-height:64px}
.font-levels input{position:absolute;opacity:0;width:100%;height:100%;inset:0;margin:0;cursor:pointer}
.font-levels label:has(:checked){background:var(--wine,#582633);color:white;border-color:var(--wine,#582633)}
.font-levels label:has(:focus-visible){outline:3px solid #b28792;outline-offset:2px}.font-levels small{color:inherit}
.sab-dark :is(button,.empty,.recipe-line,.option-rule,.font-levels label){background:#2b2b2b;color:#f0f0f0;border-color:#585858}
.sab-dark :is(a,.metric,.text-link){color:#c9c9c9!important}.sab-dark .primary{background:#484848!important}
.sab-dark :is(table,thead,tbody,tr,th,td,.product-table tbody tr:hover){background:#242424!important;color:var(--sab-font)!important;border-color:#4a4a4a!important}
.sab-dark :is(.sidebar,.rail) nav button:not(.active){background:transparent!important;border-color:transparent!important}
.personal-visuals :is(td,th,label,.field-label,.select-label,.sidebar nav button,.product-tabs button,.pill,small,.muted){font-size:calc(13px * var(--sab-scale))}
.personal-visuals h1{font-size:calc(32px * var(--sab-scale))}.personal-visuals h2{font-size:calc(20px * var(--sab-scale))}.personal-visuals h3{font-size:calc(16px * var(--sab-scale))}
.sab-dark :is(.portal-columns,.column-chooser,.portal-columns[open],.column-chooser[open],.portal-columns summary,.column-chooser summary){background:#242424!important;color:var(--sab-font)!important;border-color:#4a4a4a!important}
@media (min-width:651px) and (max-width:900px){
.layout.owner-layout{display:block!important}.owner-layout>.sidebar{position:relative!important;width:auto!important;height:auto!important;min-height:0!important;padding:16px 20px!important;gap:14px!important}
.owner-layout>.sidebar .identity{display:none}.owner-layout>.sidebar nav{display:flex!important;overflow-x:auto;gap:8px!important}.owner-layout>.sidebar nav button{white-space:nowrap;flex:none}.owner-layout>.sidebar .mark{font-size:28px!important}.owner-layout>.sidebar .mark small{display:inline;margin-inline-start:18px}.owner-layout .topbar{padding:16px 20px;flex-wrap:wrap}.owner-layout main{padding:24px 20px}
}

.report-tabs[hidden]{display:none!important}

.appearance-color{border:0;padding:0;margin:0;min-width:0}.appearance-color legend{font-size:14px;margin-bottom:8px}.color-inputs{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center}.appearance-dialog .color-inputs input{margin:0;min-width:0;height:44px;min-height:44px}.color-inputs input[data-color-hex]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;text-align:left;letter-spacing:.04em}.color-inputs input[aria-invalid=true]{border-color:#b44242}

/* Shared dark palette covers portal, workspace, POS and their floating editors. */
@media screen {
 html.sab-dark{color-scheme:dark;--ink:var(--sab-font);--muted:#bdbdbd;--wine:#c9c9c9;--dark:#f0f0f0;--paper:#181818;--line:#4a4a4a;--rose:#383838;--green:#cbcbcb}
 .sab-dark :is(h1,h2,h3,h4,h5,h6,.portal-stat>strong,.portal-greeting,.portal-intro,.portal-facts dd,.product-name,.product-price){color:var(--sab-font)!important}
 .sab-dark :is(.muted,.subtle,.eyebrow,small,.field-label,.select-label){color:#bdbdbd!important}
 .sab-dark :is(.app-tile,.portal-disclaimer,.session-chart-empty,.draft-toolbar,.product-detail,.product-page,.builder-group,.builder-option,.ticket,.order-panel,.cart,.modal,.modal-content,.select-option,.sab-date-picker,#sab-date-picker,.sab-date-trigger,.date-trigger){background:#242424!important;color:var(--sab-font)!important;border-color:#4a4a4a!important}
 .sab-dark :is(button,input,textarea,select,summary){color:var(--sab-font)!important}
 .sab-dark :is(input,textarea)::placeholder{color:#b4b4b4!important;opacity:1}
 .sab-dark :is(button,.btn,.portal-link,.product-tabs a,.product-tabs button){background-color:#2b2b2b;border-color:#585858}
 .sab-dark :is(.sidebar,.rail) :is(button.active,a.active){background:#393939!important;color:#f5f5f5!important}
 .sab-dark :is(.primary,.btn-primary,button[type=submit]){background:#484848!important;color:#ffffff!important}
 .sab-dark :is(.pill,.badge,.tag,.session-status,.avatar,.employee-avatar,.app-icon){background:#383838!important;color:#e1e1e1!important}
 .sab-dark :is(.success,.is-open){color:#d3d3d3!important;background-color:#373737!important}
 .sab-dark :is(.error,.danger,.warning,[role=alert]){color:#d0d0d0!important}
 .sab-dark :is(.sales-chart,.report-chart) text{fill:#d1d1d1!important}
 .sab-dark :is(.select-option:hover,.select-option[aria-selected=true]){background:#393939!important}
}

@media screen {
 .sab-dark :is(.search,.category,.ticket-head,.ticket-footer,.ticket-body,.payment-panel,.modal-card,.drawer,.drawer-header,.drawer-footer){background:#242424!important;color:var(--sab-font)!important;border-color:#4a4a4a!important}
 .sab-dark :is(.category.active,.btn.soft){background:#393939!important;color:#f5f5f5!important}
}

/* Pagination fields align by controls, not by the label-plus-control box. */
.pagination{align-items:flex-end;gap:16px}.pagination>button,.pagination>.select-field .select-trigger,.pagination select{min-height:46px}.pagination>span{min-height:46px;display:flex;align-items:center}.pagination>label,.pagination>.select-field{margin:0;display:flex;flex-direction:column;gap:8px;min-width:120px}.pagination .select-wrap{margin:0}.card[href]{text-decoration:none}.card[href]:hover h3{text-decoration:underline;text-underline-offset:5px}.card[href]:focus-visible{outline:3px solid #aa768d;outline-offset:4px}.support-banner{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.account-settings .panel>h2{margin-bottom:16px}.account-settings .panel>p{margin-bottom:20px}@media(max-width:480px){.pagination{gap:12px}.pagination>label,.pagination>.select-field{flex-basis:100%}}

.precision-only{width:max-content;max-width:100%;margin:16px 0}.precision-control{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--line)}
.portal-line{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));align-items:end;gap:18px}.portal-line>button[data-remove-line]{align-self:end;margin:0;min-height:44px}

/* Nested controls escape the column panel's scroll box; comfortable on tablets. */
.sab-columns-panel .precision-control,.sab-columns-panel .select-field:has([data-decimal-places]){display:grid;gap:8px;padding:12px 0 4px;margin:0;min-width:0;align-items:stretch}.sab-columns-panel .precision-control>span{font-size:13px}.sab-columns-panel .select-trigger{min-height:44px;padding:10px 12px}.sab-columns-panel .select-menu{margin:0}.select-menu{overscroll-behavior:contain}.select-menu>input[type=search]{width:100%;max-width:100%;min-width:0}.sab-columns-panel{overscroll-behavior:contain}

.precision-choices{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.precision-choices button{padding:8px 0!important;min-width:0;min-height:40px;border-radius:7px}.precision-choices button[aria-pressed=true]{background:var(--wine,#582633);color:white;border-color:var(--wine,#582633)}.sab-dark .precision-choices button[aria-pressed=true]{background:#484848!important;color:white!important}body:has(details[data-floating][open]) :is(.companion-launcher,#companion-launcher){visibility:hidden}

.sab-columns-panel label:has(input[type=checkbox]){display:flex!important;align-items:center!important;min-height:40px!important;padding:6px 8px!important;margin:0!important;gap:10px!important;box-sizing:border-box}.sab-columns-panel input[type=checkbox]{height:20px!important;min-height:20px!important;width:20px!important;padding:0!important;margin:0!important;flex:0 0 20px}.sab-columns-panel .precision-control{margin-bottom:10px;border-top:0;border-bottom:1px solid var(--line,#e3dcd6);padding:0 0 14px}

.app-context>.portal-link{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:10px;border:1px solid var(--line,#e3dcd6);text-decoration:none}.app-context>span{color:var(--muted,#786d70)}

.sab-dark .reporting .report-tabs{background:#1f1f1f;border-color:#4a4a4a}.sab-dark .reporting .report-tabs>.portal-link.selected{background:#484848!important;color:#ffffff!important;border-color:#7e7e7e!important}.sab-dark .report-chart{background:#242424!important;color:#f0f0f0!important}.select-trigger[aria-invalid=true]{border-color:#ad4555!important}

/* Narrow screens show readable records instead of squeezing columns into letters. */
@media screen and (max-width:600px){
 .product-table:has(.resizable-table){border:0;background:transparent;overflow:visible}
 .resizable-table{display:block!important;width:100%!important;min-width:0!important;border:0!important;background:transparent!important}
 .resizable-table colgroup{display:none}.resizable-table thead{display:block;border:0;background:transparent!important}
 .resizable-table thead tr{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 14px;background:transparent!important}
 .resizable-table thead th{display:block;border:0;padding:0!important;flex:0 1 auto;max-width:100%;background:transparent!important}
 .resizable-table thead th:not(:has(button)){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .resizable-table thead button{min-height:40px;padding:8px 12px!important;border:1px solid var(--line,#e3dcd6);border-radius:8px!important;text-align:start!important;font-size:12px!important}
 .resizable-table .column-resize{display:none}
 .resizable-table tbody{display:grid;gap:14px}
 .resizable-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:12px;border:1px solid var(--line,#e3dcd6);border-radius:12px;background:#fffdf9}
 .resizable-table tbody td{display:block!important;border:0!important;padding:0!important;min-width:0!important;font-size:14px!important;overflow-wrap:break-word!important}
 .resizable-table tbody td[hidden]{display:none!important}
 .resizable-table tbody td:first-child,.resizable-table tbody td:last-child,.resizable-table tbody td[colspan]{grid-column:1/-1}
 .resizable-table tbody td:first-child{font-size:16px!important;font-weight:650}
 .resizable-table tbody td[data-column-label]:before{content:attr(data-column-label);display:block;font-size:11px;font-weight:500;color:var(--muted,#786d70);line-height:1.4;margin-bottom:5px}
 .resizable-table tbody td>*{max-width:100%}.resizable-table tbody td button{min-height:44px;padding:10px 14px!important}
}
