.prep-daily-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 20px;color:var(--ink);font-size:13px}.prep-daily-tools label{display:flex;align-items:center;gap:8px}.prep-daily-tools :is(button,select),.tray-bulk button,.board-move-to,.prep-review button{font:inherit;color:inherit;border:1px solid var(--border,#d5c9ba);border-radius:18px;background:#fff;padding:7px 12px;cursor:pointer}.prep-daily-tools button:disabled{opacity:.45;cursor:default}.prep-bulk>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.prep-bulk summary{cursor:pointer}.prep-row-select{margin:0 8px 0 0;accent-color:#52724d;float:left}.prep-sticky-heading{position:fixed;top:0;z-index:80;overflow:hidden;pointer-events:none;background:#eee5d9;box-shadow:0 3px 6px #0002}.prep-sticky-heading[hidden]{display:none}.prep-sticky-title{padding:5px 12px;background:#242019;color:white;font-size:12px}.prep-sticky-heading table{table-layout:fixed;border-collapse:collapse;margin:0}.prep-sticky-heading th{box-sizing:border-box}.prep-action-note{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#29241f;color:white;padding:12px 18px;border-radius:8px;z-index:99999;max-width:90vw}.prep-review{max-width:680px;width:90vw;max-height:85dvh;overflow:auto;border:1px solid #cbbbaf;border-radius:14px;padding:24px;font:14px/1.5 Inter,sans-serif}.prep-review ul{max-height:45vh;overflow:auto;padding-left:20px}.prep-review button{margin:8px}.tray-bulk{display:flex;gap:6px;margin:8px 0;font-size:12px}.board-move-to{margin:8px 0 0 22px!important;font-size:11px!important;padding:4px 9px!important}body.board-mode .prep-bulk{display:none}@media print{.prep-sticky-heading,.prep-row-select,.prep-daily-tools,.board-move-to,.tray-bulk{display:none!important}}
.board-done-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;margin-top:8px}.board-done-label input{accent-color:#52724d}
.prep-daily-tools .prep-staff-filter{margin:0;padding:0}.prep-row-select{display:none}body:has(#prepDailyTools .prep-bulk[open]) .prep-row-select{display:inline-block}body.board-mode #prepDailyUndo{display:none}.planner-capacity{min-width:0}
#orderBoard .people-board{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))!important}.board-move-to{margin-left:0!important}.board-card .board-done-label{margin-right:8px}

/* Keep view controls and daily filters together above the workspace. */
body .top-controls .date-bar-right{column-gap:12px;row-gap:10px}
body .top-controls #prepDailyTools{width:auto;max-width:none;margin:0;padding:0;justify-content:center;gap:10px}
body .top-controls #prepDailyTools :is(button,select){box-sizing:border-box;height:36px;font:400 12px 'DM Sans',sans-serif;padding:0 12px;white-space:nowrap}
body .top-controls #prepDailyTools label{font-size:12px;white-space:nowrap;gap:7px}
body .top-controls #prepDailyTools .prep-staff-filter{display:flex;align-items:center;gap:7px}
body .top-controls #prepDailyTools #prepStaffFilter{width:156px;min-width:0}
body .top-controls #prepDailyTools #prepStatus{width:136px;min-width:0}
@media(min-width:701px){body .top-controls #prepDailyTools{display:contents}}
@media(max-width:700px){body .top-controls #prepDailyTools{display:flex;flex-wrap:wrap;width:100%;padding-top:2px}}
@media(min-width:701px) and (max-width:1100px){body .top-controls #prepDailyTools{display:flex;width:100%;flex-wrap:wrap}}
@media(max-width:700px){
 body .top-controls #prepDailyTools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
 body .top-controls #prepDailyTools :is(.prep-staff-filter,label){display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:5px}
 body .top-controls #prepDailyTools :is(#prepStaffFilter,#prepStatus){width:100%}
 body .top-controls #prepDailyUndo{grid-column:1/-1;justify-self:end}
}

/* Render this persistent row in place, only once its controls are ready. */
body .top-controls .date-bar-right{visibility:hidden;min-height:44px}
body .top-controls .date-bar-right.prep-controls-ready{visibility:visible}
/* Reserve the List/Board slot in End of Day so neighboring controls do not shift. */
body .top-controls .prep-board-switch .view-switch[hidden]{display:inline-grid!important;visibility:hidden;pointer-events:none}
