/* Only the alternate board is redesigned; the existing list keeps its styling. */
.prep-board-switch{display:flex;align-items:center;gap:14px;padding:14px 24px;border-bottom:1px solid #cdbfa940;background:#f7f3ebe8;font:12px 'DM Sans',sans-serif}.prep-board-switch strong{font-size:16px;color:#161616}.prep-board-switch span{color:#756f66;font-size:11px}.prep-board-switch .view-switch{margin-left:auto;display:flex;padding:3px;border:1px solid #d4cdbf;border-radius:9px;gap:3px}.view-switch button{border:0;background:none;padding:7px 13px;border-radius:6px;font:12px 'DM Sans',sans-serif;cursor:pointer}.view-switch button[aria-pressed=true]{background:#292824;color:white}.prep-board-switch>button{background:none;border:0;font:11px 'DM Sans',sans-serif;color:#766e64;cursor:pointer}.board-mode .po-overview{display:none!important}.board-mode .top-controls{padding:20px 24px 16px;justify-content:flex-start;min-height:0}.board-mode .date-bar{display:flex;position:static}.board-mode .date-nav{gap:12px}.board-mode .date-display{width:235px;flex-basis:235px}.board-mode .date-nav>button{width:30px;height:30px;border-radius:8px}.board-mode .date-line{gap:7px}.board-mode .day-name,.board-mode .date-full{font-size:11px;letter-spacing:.04em}.board-mode .layout{display:none!important}#orderBoard{padding:0 24px 28px;color:#20211f;font-family:'DM Sans',sans-serif}.board-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}.task-tray{padding:17px;background:#f7f5efd9;border:1px solid #d8d1c5;border-radius:12px}.task-tray h2{font:600 16px 'DM Sans',sans-serif;margin:0}.task-tray .tray-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.task-tray .count{font-size:11px;background:#e9e4db;padding:3px 7px;border-radius:5px}.task-tray input{width:100%;border:1px solid #d8d2c8;border-radius:7px;background:#fffcf8;padding:10px;font:12px 'DM Sans',sans-serif}.task-tray select{width:100%;margin:8px 0 14px;padding:8px;border:0;border-bottom:1px solid #d8d2c8;background:transparent;font:11px 'DM Sans',sans-serif}.tray-stack{max-height:65vh;overflow:auto;display:grid;gap:8px;padding:2px}.board-card{position:relative;border:1px solid #dedad2;border-radius:9px;background:#fffdf9;padding:13px 12px;cursor:grab;transition:transform .15s,box-shadow .15s,border-color .15s;touch-action:pan-y}.board-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #25231d0c;border-color:#b6ac9a}.board-card:active{cursor:grabbing}.board-card .card-top{display:flex;gap:9px;align-items:flex-start}.board-card .position{font-size:10px;color:#969083;width:14px;flex-shrink:0;padding-top:3px}.board-card .task-label{font:500 12px/1.5 'DM Sans',sans-serif;color:#171817;background:none;border:0;text-align:left;cursor:pointer;padding:0;flex:1}.board-card .card-detail{display:flex;gap:7px;align-items:center;font:10px 'DM Sans',sans-serif;color:#68665f;margin-top:10px}.board-card .card-detail .minutes{margin-left:auto;color:#272923;font-weight:500}.board-card .tag{padding:2px 5px;border-radius:3px;background:#eeeae2;color:#696052;font-size:9px}.board-card .complete{appearance:none;width:14px;height:14px;border:1px solid #b6b4a9;border-radius:4px;flex-shrink:0;margin-top:3px;cursor:pointer}.board-card .complete:checked{background:#363d32;border-color:#363d32}.board-card .complete:checked:after{content:'✓';font-size:10px;display:block;color:white;text-align:center}.board-card.is-done .task-label{text-decoration:line-through;color:#8a8a80}.board-card.is-done{background:#f5f4ee}.board-card.dragging{opacity:.35}.board-card.before{border-top:3px solid #a93963}.people-board{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:13px;overflow:auto}.person-column{border:1px solid #d5cfc2;border-radius:12px;background:#efede6a8;overflow:hidden;min-width:210px}.person-header{padding:17px 15px 13px;border-bottom:1px solid #d5cfc280;background:#fdfaf4e8}.person-identity{display:flex;align-items:center;gap:9px}.person-identity .initial{border-radius:7px;background:#e3ddd1;width:32px;height:32px;display:grid;place-items:center;font-size:10px;font-weight:600;color:#49463e}.person-identity strong{font-size:13px;font-weight:600}.person-identity small{display:block;font-size:10px;color:#79766c;margin-top:4px}.workload{display:flex;height:5px;background:#e2ddd2;border-radius:5px;overflow:hidden;margin-top:14px}.workload .prep{background:#555b49}.workload .cleaning{background:#a4967b}.workload .breaks{background:#c5bbab}.load-caption{font-size:10px;margin-top:8px;display:flex;justify-content:space-between;color:#747267}.load-caption .over{color:#a3383d}.person-queue{min-height:400px;padding:10px;display:flex;flex-direction:column;gap:9px}.person-queue.drag-over{background:#e6e1d5}.queue-empty{padding:32px 12px;text-align:center;font-size:11px;color:#8c877c;border:1px dashed #cdc6b9;border-radius:8px}.queue-end{font-size:10px;text-align:center;color:#938b7c;padding:14px 5px;margin-top:auto;min-height:44px}.board-caption{display:flex;justify-content:space-between;font-size:11px;color:#786f60;margin:0 0 14px}.board-caption button{background:none;border:0;color:#786f60;cursor:pointer}.board-footer{font-size:10px;color:#8b8376;margin-top:14px}.board-modal{border:1px solid #cfc6b7;border-radius:14px;padding:24px;width:min(410px,calc(100% - 24px));background:#fdfaf4;color:#252820;box-shadow:0 15px 65px #2224}.board-modal::backdrop{background:#29272250;backdrop-filter:blur(3px)}.board-modal h2{font:600 18px/1.4 'DM Sans',sans-serif;margin:0 0 18px}.board-modal label{display:block;font:11px 'DM Sans',sans-serif;margin-top:13px;color:#5e5d52}.board-modal input,.board-modal select{display:block;width:100%;padding:10px;border:1px solid #d4cec2;border-radius:7px;margin-top:6px;background:#fffdf9;font:13px 'DM Sans',sans-serif}.board-modal .actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.board-modal button{padding:9px 14px;border-radius:7px;border:1px solid #d4cec2;background:none;font:12px 'DM Sans',sans-serif;cursor:pointer}.board-modal button[type=submit]{background:#292b25;color:white;border-color:#292b25}#boardToast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);padding:11px 19px;border-radius:8px;background:#292b25;color:white;font-size:12px;z-index:1000;display:none}@media(max-width:900px){.board-layout{grid-template-columns:215px minmax(0,1fr);gap:14px}.people-board{grid-template-columns:repeat(3,220px)}#orderBoard{padding:0 15px 20px}}@media(max-width:600px){.prep-board-switch{padding:12px;gap:8px;flex-wrap:wrap}.prep-board-switch span{font-size:9px}.prep-board-switch>button{display:none}.board-mode .top-controls{padding:16px 12px}.board-layout{display:flex;flex-direction:column}.task-tray{width:100%;padding:12px}.tray-stack{display:flex;overflow:auto;max-height:none}.tray-stack .board-card{min-width:205px;max-width:205px}.task-tray select{margin-bottom:8px}.task-tray .tray-top{margin-bottom:8px}.people-board{width:100%;grid-template-columns:repeat(3,250px)}.board-caption{font-size:10px;gap:8px}.person-queue{min-height:330px}.board-mode .date-bar{display:flex}.board-mode .date-nav{display:flex}}@media(prefers-reduced-motion:reduce){.board-card{transition:none}}

.board-card { touch-action:auto; user-select:none; }
.board-card.dragging { opacity:.35; }
/* Assignment workspace: restrained green, clear type, compact team comparison. */
#orderBoard{color:#18211e}.board-layout{grid-template-columns:245px minmax(0,1fr);gap:18px}.people-board{grid-template-columns:repeat(4,minmax(215px,1fr));gap:12px}.person-column{background:#f7f8f4b8;border-color:#d5d9d0;border-radius:9px}.person-header{background:#fffffc;border-color:#e2e5df;padding:16px}.person-identity .initial{display:none}.person-identity strong{font-size:16px}.person-identity small{font-size:11px}.workload .prep,.mini-load>i{background:#426b54}.person-queue{min-height:320px}.board-card{background:#fffffd;border-color:#dde1d9;border-radius:7px;padding:14px 11px}.board-card .task-label{font-size:13px;line-height:1.4}.board-card .position{display:none}.drag-grip{font-size:21px;line-height:20px;color:#9da49c;flex:none}.board-card .card-detail{margin-left:22px;margin-top:8px;font-size:11px}.board-card .tag{background:none;padding:0;color:#83897f}.board-card:hover{border-color:#879d8b;box-shadow:0 5px 16px #24392a0b;transform:translateY(-1px)}.board-card.before{border-top:3px solid #426b54}.drag-over{background:#e8eee5!important;outline:1px dashed #65886d;outline-offset:-2px}.task-tray{background:#fafbf6de;border-color:#d5d9d0;border-radius:9px}.tray-stack{max-height:56vh}.team-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 12px}.team-heading h2{font:600 17px 'DM Sans',sans-serif;margin:0}.team-heading h2 span{font-size:12px;color:#737e72;margin-left:5px}.team-heading>span{font-size:11px;color:#697367}.team-overview{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:22px}.team-person{text-align:left;border:1px solid #d6dbd1;background:#fcfcf7d9;border-radius:7px;padding:10px 13px;cursor:pointer;color:#273127;font-family:'DM Sans',sans-serif;transition:background .15s,border-color .15s}.team-person strong{display:block;font-size:13px;font-weight:600}.team-person>span{display:block;font-size:10px;margin-top:5px;color:#737c70}.team-person[aria-pressed=true]{border-color:#55775d;background:#f4f7ef;box-shadow:inset 3px 0 #55775d}.mini-load{display:block;height:4px;background:#e3e7de;border-radius:3px;overflow:hidden;margin-top:8px}.mini-load>i{display:block;height:100%}.drag-preview{position:fixed;z-index:99999;pointer-events:none;box-shadow:0 12px 28px #152a2330;transform:rotate(1deg);opacity:.97}.board-caption{color:#6a7468}.load-caption{font-size:10px}.queue-end{color:#81907e}.board-footer{color:#778473}@media(max-width:1100px){.team-overview{grid-template-columns:repeat(4,minmax(0,1fr))}.people-board{grid-template-columns:repeat(4,245px)}}@media(max-width:600px){.team-overview{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.team-person{padding:9px}.team-person strong{font-size:11px}.team-heading{display:block}.team-heading>span{display:block;margin-top:6px}.board-layout{display:flex}.people-board{grid-template-columns:repeat(4,250px)}.task-tray{width:100%}}@media(prefers-reduced-motion:reduce){.team-person{transition:none}}
/* High-contrast supporting text for the assignment view. */
.prep-board-switch span,.prep-board-switch>button,
#orderBoard .team-heading>span,#orderBoard .team-heading h2 span,
#orderBoard .team-person>span,#orderBoard .board-caption,
#orderBoard .board-caption button,#orderBoard .person-identity small,
#orderBoard .load-caption,#orderBoard .card-detail,
#orderBoard .card-detail .minutes,#orderBoard .tag,
#orderBoard .drag-grip,#orderBoard .queue-empty,
#orderBoard .queue-end,#orderBoard .board-footer,
#orderBoard .task-tray .count,
.board-modal label,.board-modal #boardUnit{color:#202520}
#orderBoard input::placeholder{color:#343b34;opacity:1}
#orderBoard .board-caption button:disabled{color:#444b44;opacity:1;cursor:default}
#orderBoard .load-caption .over{color:#94252b}
.board-mode .date-display .cal-hint,.board-mode .date-display .date-sep{color:#202520}

/* Compact tray titles while preserving room for employee columns. */
#orderBoard .task-tray .board-card .task-label{font-size:12px;line-height:1.4}
/* Lift the full card at its grab point, then settle it into the queue. */
.board-is-dragging,.board-is-dragging *{cursor:grabbing!important}
#orderBoard .board-card.dragging{opacity:.16;border:1px dashed #55775d;box-shadow:none;transform:none}
.drag-preview{margin:0;box-sizing:border-box;transform-origin:center;will-change:transform;transition:none!important;box-shadow:0 18px 40px #18342928,0 3px 9px #18342918;border-color:#77947c;background:#fffffd;opacity:1}
.drag-preview .task-label{font:500 13px/1.4 'DM Sans',sans-serif;color:#171817}
.drag-preview .complete{display:none}
#orderBoard .board-card.before{border-top:1px solid #55775d;box-shadow:0 -4px 0 -1px #426b54;transform:translateY(3px)}
#orderBoard .person-queue{transition:background-color .16s}
@media(prefers-reduced-motion:reduce){#orderBoard .person-queue{transition:none}#orderBoard .board-card.before{transform:none}}

/* Match the existing Prep List: item regular, action italic, both readable. */
.board-card .task-label .cp-action{font-style:italic;color:inherit;font-size:inherit;font-weight:inherit}

.board-card .drag-grip{width:13px}.board-card .card-detail{margin-left:22px}

/* Readable workload figures on summary and detailed employee cards. */
#orderBoard .team-person>span{font-size:12px;line-height:1.4}
#orderBoard .load-caption{font-size:12px;line-height:1.4}
#orderBoard .person-identity small{font-size:12px;line-height:1.4}

/* Distinguish the item from its preparation steps. */
.board-card .task-label{font-weight:650}
.board-card .task-label .cp-action{font-weight:400}
/* Live insertion space lets surrounding cards move before release. */
#orderBoard .board-card.drag-source{position:absolute!important;visibility:hidden!important;pointer-events:none!important}
.drag-slot{flex:none;box-sizing:border-box;border:1px dashed #64856d;border-radius:7px;background:#426b540b;min-height:64px;pointer-events:auto}
.person-queue:has(.drag-slot) .queue-empty{display:none}
/* Inline amount entry follows the list's preset/override behavior. */
.board-card .card-detail{flex-wrap:wrap;row-gap:6px}
.board-card .card-quantity{display:inline-flex;align-items:center;gap:5px;margin:0;font:11px 'DM Sans',sans-serif;color:#202520;max-width:100%}
.board-card .card-quantity input{width:42px;min-width:0;padding:3px 4px;border:1px solid #cbd1c6;border-radius:5px;background:#fffefb;color:#202520;text-align:center;font:12px 'DM Sans',sans-serif;cursor:text;touch-action:auto;user-select:text}
#orderBoard .card-quantity input::placeholder{color:#697165;opacity:1}
.board-card .card-quantity input:focus{outline:2px solid #64856d;outline-offset:1px}
.board-card .card-quantity span{overflow-wrap:anywhere}

/* Presets are lighter than entered quantities. */
#orderBoard .card-quantity input::placeholder{color:#92978e;opacity:1}

/* Separate workload totals from cleaning and break allowances. */
#orderBoard .load-caption strong{font-weight:650}
#orderBoard .load-allowances{border-top:1px solid #dce1d6;margin-top:10px;padding-top:9px;justify-content:flex-start}
#orderBoard .load-allowances [aria-hidden]{margin:0 5px}
/* Selected staff wrap into even rows; tasks scroll within each fixed card. */
#orderBoard .people-board{grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;align-items:start}
#orderBoard .person-column{height:510px;min-width:0;display:flex;flex-direction:column}
#orderBoard .person-header{flex:none}
#orderBoard .person-queue{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:#a3b29f transparent;scrollbar-gutter:stable;overscroll-behavior:contain}
#orderBoard .person-queue>.board-card{flex-shrink:0}
#orderBoard .person-queue::-webkit-scrollbar{width:6px}
#orderBoard .person-queue::-webkit-scrollbar-thumb{background:#a3b29f;border-radius:6px}
#orderBoard .person-queue::-webkit-scrollbar-track{background:transparent}
@media(max-width:1100px){#orderBoard .people-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){#orderBoard .people-board{grid-template-columns:minmax(0,1fr)}#orderBoard .person-column{height:460px}}
/* Return assignments without deleting their task definitions. */
.board-card .return-task{flex:none;width:22px;height:22px;padding:0;border:0;border-radius:5px;background:transparent;color:#465044;font:18px/22px 'DM Sans',sans-serif;cursor:pointer;margin:-3px -4px 0 1px}
.board-card .return-task:hover{background:#e8eee3;color:#18291b}
.board-card .return-task:focus-visible{outline:2px solid #55775d;outline-offset:2px}



.board-card .misc-note{margin:7px 0 0 22px;font:11px/1.4 'DM Sans',sans-serif;color:#303b30;overflow-wrap:anywhere}

.prep-board-switch{order:2;display:flex;margin-left:12px}.prep-board-switch .view-switch{display:flex;gap:3px;padding:3px;border:1px solid #d4cdbf;border-radius:9px}.board-mode .top-controls{flex-wrap:wrap}.board-mode .date-bar{order:0}.board-mode .prep-board-switch{margin-left:auto;padding:0;border:0;background:none}
/* Keep the view control on the page background, without an extra toolbar strip. */
.prep-board-switch{background:none;border:0;padding:0;margin:0;justify-content:center}
.prep-board-switch .view-switch{margin-left:0}
.prep-board-switch .view-switch button{color:#1a1714}
.prep-board-switch .view-switch button[aria-pressed=true]{color:#fff}
@media(max-width:700px){
 .top-controls,.board-mode .top-controls{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:12px 16px}
 .top-controls .date-bar,.board-mode .top-controls .date-bar{display:contents}
 .top-controls .date-nav{order:0;justify-content:center;width:100%;gap:8px}
 .top-controls .date-display,.board-mode .top-controls .date-display{width:auto;flex:0 1 235px;min-width:0}
 .top-controls .prep-board-switch,.board-mode .top-controls .prep-board-switch{order:1;margin:0;padding:0;justify-content:center;background:none;border:0}
 .top-controls .view-switch{width:200px;margin:0}
 .top-controls .view-switch button{flex:1;min-height:34px}
 .top-controls .date-bar-right{order:2;position:static;justify-content:center;gap:10px;flex-wrap:wrap;width:100%}
 .top-controls .tab-bar{order:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:0;gap:0 8px}
 .top-controls .tab{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 4px}
 #prepOverview .po-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #prepOverview .po-stat{width:100%;min-width:0;text-align:center;white-space:normal;padding:8px 4px}
}
/* Start the Task Tray directly below the date; keep the team workspace beside it. */
@media(min-width:701px){
 .board-mode #orderBoard:not([hidden]){display:grid;grid-template-columns:285px minmax(0,1fr);grid-template-rows:auto auto auto 1fr;column-gap:18px;row-gap:12px;align-items:start}
 #orderBoard>.board-layout{display:contents}
 #orderBoard .task-tray{grid-column:1;grid-row:1 / 5;min-width:0;width:100%;align-self:start}
 #orderBoard>.team-heading{grid-column:2;grid-row:1;margin:0;min-width:0}
 #orderBoard>.team-overview{grid-column:2;grid-row:2;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;min-width:0}
 #orderBoard>.board-caption{grid-column:2;grid-row:3;margin:4px 0 0;min-width:0}
 #orderBoard .people-board{grid-column:2;grid-row:4;min-width:0}
}
@media(min-width:701px) and (max-width:1100px){
 .board-mode #orderBoard:not([hidden]){grid-template-columns:250px minmax(0,1fr);column-gap:14px}
 #orderBoard>.team-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* One centered date position in both List and Board views. */
@media screen and (min-width:701px){
 .top-controls,.board-mode .top-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px 16px;padding:20px 24px 16px}
 .top-controls .date-bar,.board-mode .top-controls .date-bar{display:contents}
 .top-controls .date-nav,.board-mode .top-controls .date-nav{grid-column:2;grid-row:1;justify-self:center;order:0;gap:12px}
 .top-controls .date-display,.board-mode .top-controls .date-display{width:216px;flex:0 0 216px}
 .top-controls .date-nav>button,.board-mode .top-controls .date-nav>button{width:26px;height:26px;border-radius:6px}
 .top-controls .prep-board-switch,.board-mode .top-controls .prep-board-switch{grid-column:3;grid-row:1;justify-self:end;margin:0;order:0}
 .top-controls .tab-bar{grid-column:1 / -1;grid-row:2;justify-content:center;flex-wrap:wrap;order:0}
 .top-controls .date-bar-right{display:flex;position:static;grid-column:1 / -1;grid-row:3;justify-content:center;flex-wrap:wrap;order:0}
}

/* Download belongs to the shared List/Board controls. */
.top-controls .prep-board-switch{gap:8px;flex-wrap:wrap;max-width:100%}
.top-controls #prepDownload{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:7px 10px;border:1px solid #d4cdbf;border-radius:8px;background:#fdfaf6;font:12px 'DM Sans',sans-serif;color:#30291f;white-space:nowrap}
.top-controls #prepDownload span{font:inherit;color:inherit}
@media(min-width:701px){.top-controls .prep-board-switch{justify-content:flex-end;min-width:0}.top-controls #prepDownload{flex-shrink:0}}
/* Softer board headings, consistent with the hub's compact labels. */
#orderBoard .team-heading h2,#orderBoard .task-tray h2{font:500 15px/1.35 'DM Sans',sans-serif;color:#302b25;letter-spacing:0}
#orderBoard .person-identity strong{font:500 14px/1.35 'DM Sans',sans-serif;color:#302b25;letter-spacing:0}
#orderBoard .team-person strong{font-family:'DM Sans',sans-serif;font-weight:500;color:#302b25;letter-spacing:0}

/* Overview, date, categories and actions follow one centered column. */
body #prepOverview{width:calc(100% - 48px);max-width:1174px;margin:18px auto 0;padding:12px 16px}
#prepOverview .po-stats{justify-content:center;text-align:center}
#prepOverview .po-stat{text-align:center}
@media (max-width:1100px), (pointer:coarse) and (max-width:1366px){
 #prepOverview .po-stats{justify-content:flex-start;text-align:left}
 #prepOverview .po-stat{text-align:left}
}
body .top-controls,body.board-mode .top-controls{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:1174px;margin:0 auto;padding:16px 24px 20px;gap:12px}
body .top-controls .date-bar,body.board-mode .top-controls .date-bar{display:contents}
body .top-controls .date-nav{order:0;position:static}
body .top-controls .tab-bar{order:1;width:auto;justify-content:center}
body .top-controls .date-bar-right,body.board-mode .top-controls .date-bar-right{display:flex!important;order:2;position:static;width:auto;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}
body .top-controls .prep-board-switch,body.board-mode .top-controls .prep-board-switch{margin:0;padding:0;order:0;justify-content:center;background:none;border:0}
body .top-controls .prep-view-toggle{margin:0;order:0}
.prep-board-switch .view-switch[hidden]{display:none!important}
@media(max-width:700px){body #prepOverview{width:calc(100% - 24px);margin-top:12px}body .top-controls,body.board-mode .top-controls{padding:14px 12px;gap:10px}body .top-controls .tab-bar{width:100%}}
/* Daily notes and overview share a balanced, compact row. */
.prep-summary-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch;margin-bottom:18px}
.prep-summary-pair>.day-notes{margin:0;min-width:0;display:flex;flex-direction:column}
.prep-summary-pair>.day-notes textarea{flex:1;min-height:110px;height:100%;border:1px solid #d7c4ac;border-radius:14px;background:#fff;padding:14px;box-sizing:border-box}
body .prep-summary-pair #prepOverview{width:100%;max-width:none;margin:0;padding:12px 14px;border-radius:14px;background:#fff;box-shadow:none;min-width:0;box-sizing:border-box}
.prep-summary-pair .po-stats{gap:4px 12px;padding:0 0 8px;border-top:0}.prep-summary-pair .po-controls{margin:9px 0 0}.prep-summary-pair .po-stat{padding:4px;font-size:11px}
.prep-summary-pair .po-result{flex-wrap:wrap}.prep-summary-pair .po-queue:not(:empty){margin-top:10px}
body .top-controls :is(.prep-view-toggle,.view-switch){border-radius:999px!important;background:#fff!important;padding:3px;gap:3px;border:1px solid #d7c4ac!important}
body .top-controls :is(#pv-prep,#pv-eod,#showList,#showBoard){font-weight:400!important;background:#fff!important;color:#30291f!important;border:0!important;border-radius:999px!important;box-shadow:none!important;padding:7px 13px}
body .top-controls :is(#pv-prep,#pv-eod,#showList,#showBoard)[aria-pressed=true]{background:#eee4ea!important;color:#30291f!important;box-shadow:inset 0 0 0 1px #d8c4d0!important;font-weight:500!important}
@media(max-width:800px){.prep-summary-pair{grid-template-columns:1fr;gap:12px}.prep-summary-pair>.day-notes textarea{min-height:96px}}

/* Prep toolbar: one control size and one rounded selected treatment. */
body .top-controls :is(.prep-view-toggle,.view-switch){display:inline-flex;align-items:center;box-sizing:border-box;height:38px;width:auto;margin:0;padding:3px;gap:3px;overflow:visible;flex-shrink:0}
body .top-controls :is(.prep-view-toggle,.view-switch) button:is(#pv-prep,#pv-eod,#showList,#showBoard){box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;height:30px;min-height:30px;margin:0;padding:0 11px;font:400 12px/1 'DM Sans',sans-serif!important;letter-spacing:0;text-transform:none;border:0!important;border-radius:999px!important;background:#fff!important;color:#30291f!important;box-shadow:none!important;white-space:nowrap}
body .top-controls :is(.prep-view-toggle,.view-switch) button[aria-pressed=true]:is(#pv-prep,#pv-eod,#showList,#showBoard){background:#eee4ea!important;box-shadow:inset 0 0 0 1px #d8c4d0!important}
body .top-controls :is(#staffingPanelBtn,#prepDownload){box-sizing:border-box;height:38px;min-height:38px;margin:0;padding:0 11px!important;align-items:center;justify-content:center;gap:7px;font:400 12px/1 'DM Sans',sans-serif!important;letter-spacing:0;text-transform:none;border-radius:999px!important;white-space:nowrap}
body .top-controls :is(#staffingPanelBtn,#prepDownload) svg{width:14px;height:14px;flex:none}
body .top-controls #prepDownload span{font:inherit;letter-spacing:inherit}
body .top-controls :is(.prep-view-toggle,.view-switch) button:focus-visible{outline:2px solid #8a657e;outline-offset:1px}
@media(max-width:700px){body .top-controls .prep-board-switch{display:contents}body .top-controls .date-bar-right{gap:10px}body .top-controls :is(#staffingPanelBtn,#prepDownload){order:0}}
/* Compact team chooser replaces duplicate staff summary cards. */
#orderBoard .board-team-toolbar{display:flex;align-items:center;gap:12px;position:relative;z-index:5;margin-bottom:12px}
#boardTeam{position:relative}
#boardTeam summary{display:flex;align-items:center;gap:9px;list-style:none;cursor:pointer;height:38px;padding:0 13px;border:1px solid #d4c5b3;border-radius:999px;background:#fff;font:12px 'DM Sans',sans-serif;color:#29251f}
#boardTeam summary::-webkit-details-marker{display:none}
#boardTeam summary>span,.team-selection-note{font:11px 'DM Sans',sans-serif;color:#686052}
#boardTeam[open] summary{background:#eee5ed}
#boardTeam summary:focus-visible,#boardTeam button:focus-visible{outline:2px solid #825476;outline-offset:2px}
:is(#orderBoard,.board-top-tools) .board-team-menu{position:absolute;top:calc(100% + 7px);left:0;width:310px;max-width:calc(100vw - 40px);padding:12px;background:#fffdf9;border:1px solid #d4c5b3;border-radius:14px;box-shadow:0 8px 24px #30251822}
:is(#orderBoard,.board-top-tools) .team-menu-actions{display:flex;gap:6px}
:is(#orderBoard,.board-top-tools) .team-menu-actions button{border:1px solid #d4c5b3;border-radius:999px;background:#fff;padding:7px 10px;font:11px 'DM Sans',sans-serif;color:#29251f;cursor:pointer}
:is(#orderBoard,.board-top-tools) .board-team-menu p{margin:13px 4px 6px;font:600 11px 'DM Sans',sans-serif;color:#655c50}
:is(#orderBoard,.board-top-tools) .team-options{max-height:290px;overflow:auto}
:is(#orderBoard,.board-top-tools) .team-options label{display:flex;align-items:center;gap:9px;padding:9px 4px;font:12px 'DM Sans',sans-serif;cursor:pointer}
:is(#orderBoard,.board-top-tools) .team-options input{accent-color:#825476;width:15px;height:15px;margin:0;flex:none}
:is(#orderBoard,.board-top-tools) .team-options small{margin-left:auto;white-space:nowrap;font-size:10px;color:#686052}
#orderBoard .board-team-empty{grid-column:1/-1;padding:28px;border:1px dashed #cfc6b7;border-radius:12px;background:#fffaf4b3;font:13px/1.6 'DM Sans',sans-serif;color:#554c40}
@media(min-width:701px){
 .board-mode #orderBoard:not([hidden]){grid-template-rows:auto auto 1fr}
 #orderBoard .task-tray{grid-row:1/4}
 #orderBoard>.board-team-toolbar{grid-column:2;grid-row:1;margin:0}
 #orderBoard>.board-caption{grid-row:2}
 #orderBoard .people-board{grid-row:3}
}
@media(min-width:601px) and (max-width:700px){#orderBoard .board-layout{display:flex;flex-direction:column}#orderBoard .task-tray,#orderBoard .people-board{width:100%}}

/* Swipes on cards scroll the tray/page. Only the grip reserves touch dragging. */
#orderBoard .board-card .drag-grip{touch-action:none;cursor:grab}
#orderBoard .tray-stack{touch-action:auto;-webkit-overflow-scrolling:touch}
@media(any-pointer:coarse){
 #orderBoard .board-card .drag-grip{box-sizing:border-box;width:32px;min-height:44px;display:flex;align-items:center;justify-content:center;margin:-6px 0 -6px -6px}
 #orderBoard .board-card:hover{transform:none}
}




/* Share List view's staff sidebar and its existing responsive drawer breakpoint. */
body.board-mode #orderBoard{flex:1;min-width:0;margin-top:16px}
body.board-mode .board-caption{justify-content:flex-end}


/* Category is a selection field, separate from disclosure controls. */
.task-tray .tray-category-label{display:block;margin:12px 0 6px;font:500 11px 'Inter',Arial,sans-serif;color:#514941}
.task-tray #boardCategory{display:block;box-sizing:border-box;width:100%;min-height:38px;padding:9px 12px;margin:0 0 14px;border:1px solid #d4c8bb;border-radius:8px;background-color:#fffdfa;color:#27211d;font:500 12px 'Inter',Arial,sans-serif;cursor:pointer}
.task-tray #boardCategory:focus-visible{outline:2px solid #a93963;outline-offset:2px}

/* Keep notes, overview and staff anchored while only the task workspace changes. */
.prep-workspace{flex:1;min-width:0}
body.board-mode #contentArea .content-inner{padding-bottom:0}
body.board-mode #contentArea .content-inner>:not(.prep-summary-pair):not(.day-notes){display:none!important}
body.board-mode #orderBoard{margin-top:0;padding:0 16px 28px}
@media(max-width:600px){body.board-mode #orderBoard{padding:0 8px 28px}}
.prep-custom-section{margin-top:20px}.prep-custom-section>.section-header{list-style:none}.prep-custom-section>.section-header::-webkit-details-marker{display:none}.prep-custom-section .section-meta{display:flex;align-items:center;gap:8px}.prep-custom-section[open]>.section-header .section-chevron{transform:rotate(180deg)}.custom-task-table th:first-child{width:60%}.custom-task-table th:nth-child(2){width:27%}.custom-task-table th:last-child{width:13%}.custom-task-name{display:flex;align-items:center;gap:12px}.custom-task-name input{flex:none;accent-color:var(--sage)}.custom-task-name button{border:0;padding:0;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}.custom-task-name span,.custom-task-name button{overflow-wrap:anywhere}.custom-done .custom-task-name span,.custom-done .custom-task-name button{text-decoration:line-through;opacity:.6}.custom-empty{color:var(--ink-xlight)}body:not(.admin-mode) #orderBoard .tray-add-custom{display:none}
.tray-group{border-bottom:1px solid #dfcbb8}.tray-group>summary{cursor:pointer;padding:18px 4px;font-size:12px}.tray-group>summary small{float:right}.tray-group-items{display:grid;gap:8px;padding-bottom:12px}.tray-item-group>summary{cursor:pointer;padding:10px 4px;font-size:12px;font-weight:600}.tray-item-group .board-card{margin-bottom:6px}#orderBoard .tray-stack{display:block}#orderBoard .tray-add-custom{width:100%;margin-top:16px;padding:10px;border:1px solid #d7c4ac;border-radius:8px;background:#fffdfa;cursor:pointer;font:12px 'DM Sans',sans-serif}@media(max-width:600px){.custom-row{grid-template-columns:20px 1fr}.custom-row>span{grid-column:2}#orderBoard .tray-stack .board-card{min-width:0;max-width:none}}
/* Reserve the category row so switching views never shifts the controls below. */
body.board-mode .top-controls .tab-bar{visibility:hidden;pointer-events:none}

/* Center task editors and keep tablet choices within the same popup. */
.board-modal{position:fixed;inset:0;margin:auto;max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box}
.board-modal h2{padding-right:36px;line-height:1.4}
.board-modal .board-modal-close{position:absolute;top:14px;right:14px;width:32px;height:32px;padding:0;display:grid;place-items:center;border:0;border-radius:8px;background:rgba(26,23,20,.06);font-size:24px;line-height:1}
.board-modal .board-field{display:block;margin:14px 0;font-size:12px}
.board-modal .board-field>span{display:block;margin-bottom:6px}
.board-modal select[hidden]{display:none!important}
.board-choice{border:1px solid #d4cec2;border-radius:8px;background:#fffdf9;margin-top:6px}
.board-choice summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;font-size:14px;cursor:pointer;list-style:none;min-height:44px}
.board-choice summary::-webkit-details-marker{display:none}
.board-choice summary:after{content:'⌄';font-size:16px}
.board-choice[open] summary{border-bottom:1px solid #ded8ce}
.board-choice-options{display:grid;max-height:220px;overflow:auto;padding:4px;gap:2px}
.board-modal .board-choice-options button{text-align:left;font-size:14px;border:0;border-radius:5px;padding:11px 12px;min-height:44px}
.board-modal .board-choice-options button[aria-pressed=true]{background:#eee9df;font-weight:600}
.board-modal .board-choice-options button:hover{background:#f2eee6}
.board-modal #boardUnit{display:block;margin-top:6px;line-height:1.5}
@media(pointer:coarse){.board-modal input,.board-modal .board-choice summary,.board-modal .board-choice-options button{font-size:16px}}

/* Larger, roomier Task Tray while retaining the compact employee workspace. */
#orderBoard .task-tray{padding:20px}
#orderBoard .task-tray h2{font-size:17px}
#orderBoard .task-tray .count{font-size:13px;padding:4px 8px}
#orderBoard .task-tray #boardSearch,#orderBoard .task-tray #boardCategory{font-size:14px;min-height:44px;padding:11px 12px}
#orderBoard .task-tray .tray-category-label{font-size:13px;margin:16px 0 8px}
#orderBoard .task-tray .tray-top{margin-bottom:18px}
#orderBoard .task-tray .tray-stack{max-height:70vh;max-height:70dvh}
#orderBoard .task-tray .tray-group>summary{font-size:14px;line-height:1.5;padding:21px 4px}
#orderBoard .task-tray .tray-group>summary small{font-size:12px}
#orderBoard .task-tray .tray-item-group>summary{font-size:14px;line-height:1.5;padding:13px 4px}
#orderBoard .task-tray .tray-group-items{gap:10px;padding-bottom:16px}
#orderBoard .task-tray .board-card{padding:16px 13px}
#orderBoard .task-tray .board-card .task-label{font-size:14px;line-height:1.5}
#orderBoard .task-tray .board-card .card-detail{font-size:13px;margin-top:11px;gap:10px}
#orderBoard .task-tray .board-card .tag{font-size:11px}
#orderBoard .task-tray .misc-note,#orderBoard .task-tray .queue-empty{font-size:13px;line-height:1.5}
#orderBoard .task-tray .tray-add-custom{font-size:14px;padding:12px}
@media(pointer:coarse){#orderBoard .task-tray #boardSearch,#orderBoard .task-tray #boardCategory{font-size:16px}}
@media(max-width:700px){#orderBoard .task-tray{padding:16px}}

/* Clear title, metadata and action rows. */
#orderBoard .board-card .card-top{display:flex;align-items:flex-start;gap:9px}
#orderBoard .board-card .drag-grip{flex:0 0 16px}
#orderBoard .board-card .task-label{flex:1;min-width:0;text-align:left;line-height:1.45;margin:0;padding:0}
#orderBoard .board-card .task-label .cp-action{display:block;font-weight:400;color:#6c6258;font-size:.92em}
#orderBoard .board-card .card-top>input,#orderBoard .board-card .return-task{flex:none;margin:2px 0 0}
#orderBoard .board-card .card-detail{display:flex;justify-content:space-between;align-items:center;margin:10px 0 0 25px;gap:8px}
#orderBoard .board-card .minutes{margin-left:auto;white-space:nowrap;font-weight:600}
#orderBoard .board-card .card-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e5ddd3;margin-top:12px;padding-top:8px}
#orderBoard .board-card .card-actions .board-done-label,#orderBoard .board-card .card-actions .board-move-to{margin:0}
@media(any-pointer:coarse){#orderBoard .board-card .drag-grip{flex-basis:24px}}

#orderBoard .board-card input[type="checkbox"]{width:14px!important;height:14px;min-width:14px;padding:0;flex:none}

/* Match the centered Prep workspace and its compact type scale. */
body.board-mode .main-inner{width:100%;max-width:1490px;margin-inline:auto;box-sizing:border-box}
body.board-mode .prep-workspace{min-width:0}
@media(min-width:701px){
 body.board-mode #orderBoard:not([hidden]){grid-template-columns:240px minmax(0,1fr);column-gap:16px}
 #orderBoard .people-board{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
}
#orderBoard .task-tray{padding:14px}
#orderBoard .task-tray h2{font-size:14px}
#orderBoard .task-tray .count{font-size:11px;padding:3px 6px}
#orderBoard .task-tray #boardSearch,#orderBoard .task-tray #boardCategory{font-size:12px;min-height:36px;padding:8px 10px}
#orderBoard .task-tray .tray-category-label{font-size:11px;margin:10px 0 6px}
#orderBoard .task-tray .tray-top{margin-bottom:12px}
#orderBoard .task-tray .tray-group>summary{font-size:12px;line-height:1.4;padding:12px 3px}
#orderBoard .task-tray .tray-group>summary small{font-size:10px}
#orderBoard .task-tray .tray-item-group>summary{font-size:12px;line-height:1.4;padding:9px 3px}
#orderBoard .task-tray .tray-group-items{gap:8px;padding-bottom:10px}
#orderBoard .task-tray .board-card{padding:10px}
#orderBoard .task-tray .board-card .task-label{font-size:12px;line-height:1.4}
#orderBoard .task-tray .board-card .card-detail{font-size:10px;margin-top:8px;gap:6px}
#orderBoard .task-tray .board-card .tag{font-size:9px}
#orderBoard .task-tray .misc-note,#orderBoard .task-tray .queue-empty{font-size:11px;line-height:1.4}
#orderBoard .task-tray .tray-add-custom{font-size:12px;padding:9px}
@media(pointer:coarse){#orderBoard .task-tray #boardSearch,#orderBoard .task-tray #boardCategory{font-size:16px;min-height:44px}}

/* Keep all Board controls above notes, with no spacer row over the cards. */
.board-top-tools{display:flex;align-items:center;gap:8px}
.board-top-tools[hidden]{display:none!important}
.board-top-tools .board-team-toolbar{position:relative;z-index:20;margin:0}
.board-top-tools .board-caption{margin:0;display:flex;align-items:center}
.board-top-tools #boardUndo{border:1px solid #d4c5b3;border-radius:999px;background:#fff;padding:9px 13px;font:12px 'DM Sans',sans-serif;color:#29251f;cursor:pointer}
.board-top-tools #boardUndo:disabled{opacity:.45;cursor:default}
.board-top-tools .board-team-menu{right:0;left:auto}
@media(min-width:701px){
 body.board-mode #orderBoard:not([hidden]){grid-template-rows:minmax(0,1fr)}
 #orderBoard .task-tray{grid-column:1;grid-row:1;align-self:start}
 #orderBoard .people-board{grid-column:2;grid-row:1;align-self:start}
 #orderBoard .person-header{box-sizing:border-box;min-height:164px}
}
