/* Personal chrome never changes category/status colors. */
:root{--accent:#205fba;--accent-hover:#174b98;--accent-soft:#e7efff;--header:#18324e;--page:#e5eaf0;--board:#dfe6ee;--border:#b7c4d2;--text:#172b43}
:root[data-accent=green]{--accent:#176b56;--accent-hover:#10533f;--accent-soft:#e2f2ec;--header:#183f37}
:root[data-accent=purple]{--accent:#7051a3;--accent-hover:#533c7c;--accent-soft:#eee8f7;--header:#342b48}
:root[data-accent=graphite]{--accent:#49566b;--accent-hover:#344155;--accent-soft:#e8edf3;--header:#273241}
:root[data-layout=calm]{--page:#f5f6f8;--board:#f2f4f7;--border:#d6dce4}
:root[data-layout=zones]{--page:#ecf1f6;--board:#d9e4ee;--border:#aabdd0}
:root,body,.page{background:var(--page);color:var(--text)}
.topbar,.month-weekdays{background:var(--header)}
.button.primary,.schedule-tabs button.active,.day-column.today .day-head,.shipment-mode .button.active{background:var(--accent);border-color:var(--accent);color:white}
.button.primary:hover{background:var(--accent-hover)}
.direction-tabs .button.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.metric{border-top-color:var(--accent)}.metric.warn{border-top-color:#a56915}.metric.risk{border-top-color:#b44736}
.board-main,.shipment-board,.production-board,.month-calendar,.month-grid{background:var(--board)}
.month-day,.day-column,.board-main,.toolbar,.metric{border-color:var(--border)}
.month-day.today,.day-column.today{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.month-day.today{background:var(--accent-soft)}
.month-day.today .month-day-top,.month-day-open,.text-link{color:var(--accent)}
:root[data-layout=calm] .topbar{background:white;color:var(--text);border-bottom:1px solid var(--border);box-shadow:none}
:root[data-layout=calm] .topbar .text-button,:root[data-layout=calm] .nav-button,:root[data-layout=calm] .role-pill{color:var(--text)}
:root[data-layout=calm] .nav-button.active,:root[data-layout=calm] .nav-button:hover{background:var(--accent-soft);color:var(--accent);border-bottom-color:var(--accent)}
:root[data-layout=calm] .load-card,:root[data-layout=calm] .line-slot{box-shadow:none}
:root[data-layout=calm] .day-head{background:#edf0f5;border-color:var(--border)}
:root[data-layout=calm] .day-column.today .day-head{background:var(--accent-soft);color:var(--accent)}
:root[data-layout=calm] .day-column.today .day-weekday{color:var(--accent)}
:root[data-layout=calm] .shipment-day,:root[data-layout=calm] .production-day{background:#fafbfc;padding:14px}
:root[data-layout=zones] .day-column .day-head{background:var(--accent-soft);color:var(--text);border-bottom:3px solid var(--accent)}
:root[data-layout=zones] .day-column.today .day-weekday,:root[data-layout=zones] .today-label{color:var(--text)}
:root[data-layout=zones] .day-totals{background:var(--accent-soft);border-left:4px solid var(--accent);padding:10px}
:root[data-layout=zones] .month-day{border-width:2px}
:root[data-layout=zones] .day-clients{background:#f0f4f8;padding:7px;border-radius:8px}
/* Product type is explicit in text; hue is a redundant cue. */
.product-type{display:inline-flex;align-items:center;font-size:10px;font-weight:750;line-height:1.4;border:1px solid;padding:2px 6px;border-radius:5px;white-space:nowrap;vertical-align:middle;margin:2px 3px 2px 0}
.type-cereal{color:#784c09;background:#fff2d6;border-color:#d8b36b}
.type-grain{color:#205f43;background:#e5f3e9;border-color:#8abc99}
.type-feed{color:#70468b;background:#f1e8f8;border-color:#bea1ce}
.type-packed{color:#216379;background:#e4f2f9;border-color:#8cb9cd}
.type-other{color:#4d5a66;background:#edf0f3;border-color:#b8c1ca}
select[data-product-type=cereal]{border-left:5px solid #b98527;background-color:#fffaf0}
select[data-product-type=grain]{border-left:5px solid #3e8a5c;background-color:#f0f8f2}
select[data-product-type=feed]{border-left:5px solid #8b5da5;background-color:#f7f1fb}
select[data-product-type=packed]{border-left:5px solid #38829b;background-color:#edf7fb}
select optgroup{font-weight:800;color:#172b43;background:#f1f4f8}select option{font-weight:500;color:#172b43;background:white}
.product-type-legend{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:8px 0}
/* Day overview: all physical trucks, ramp total, filtered clients, then drilldown. */
.month-day{display:flex;flex-direction:column;gap:9px;min-height:245px;padding:12px}
.month-day-top strong{font-size:16px}.month-day-top .day-weekday{font-size:12px;color:#52647a}
.day-totals{display:grid;gap:6px;padding:9px;background:#eef2f7;border-radius:7px}
.day-truck-count{font-size:14px;display:flex;align-items:baseline;gap:7px}.day-truck-count b{font-size:23px;line-height:1.2}
.day-ramp{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 7px;font-size:13px}.day-ramp small{font-size:11px;color:#52647a}
.day-totals progress{width:100%;height:5px;accent-color:var(--accent)}
.day-filter-note{font-size:11px;line-height:1.5;margin:0;color:#52647a}
.day-status-legend{display:flex;flex-wrap:wrap;gap:12px;padding:0 0 12px;font-size:12px;font-weight:650}
.day-status-legend .searching{color:#20539b}.day-status-legend .confirmed{color:#1a7250}.day-status-legend .shipped{color:#52647a}
.day-status-bar{display:flex;gap:3px;height:5px;min-height:5px;border-radius:8px;overflow:hidden}
.day-status-bar .searching{background:#4e85ce}.day-status-bar .confirmed{background:#289567}.day-status-bar .shipped{background:#8390a2}
.day-clients{display:grid;gap:7px}
.day-client{width:100%;min-width:0;display:grid;gap:5px;text-align:left;padding:8px;border:1px solid #c6d3e0;border-left:4px solid #4e85ce;background:white;border-radius:6px;color:#172b43;cursor:pointer;font:inherit}
.day-client:hover{box-shadow:0 2px 8px #142c4124;border-right-color:var(--accent)}
.day-client.confirmed{border-left-color:#289567}.day-client.shipped{border-left-color:#8390a2;background:#f7f9fb}
.day-client-main{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:3px 6px;font-size:13px}.day-client-main strong{overflow-wrap:anywhere;min-width:0}.day-client-main b{white-space:nowrap}
.day-client-status{font-size:11px;color:#20539b;line-height:1.3;display:flex;gap:6px;align-items:center}.day-client-status i{font-style:normal}
.confirmed .day-client-status{color:#196444}.shipped .day-client-status{color:#52647a}
.day-empty{font-size:12px;line-height:1.5;color:#68788b;margin:8px 0}
.month-day-open{margin-top:auto;font-size:13px;padding:8px 0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.day-detail-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}
.day-detail-metrics>div{padding:14px;border:1px solid #c6d3e0;border-radius:8px;background:#f2f5f8;display:grid;gap:6px}.day-detail-metrics strong{font-size:23px}.day-detail-metrics span{font-size:12px}
.day-detail-metrics .searching{background:#e7efff}.day-detail-metrics .confirmed{background:#e7f5ed}.day-detail-metrics .shipped{background:#e9eef4}
#dayDetails>.day-totals{max-width:480px}.day-detail-table{width:100%}.day-detail-table small{display:block;margin-top:7px;color:#52647a;font-size:12px}
.text-link{background:none;border:none;padding:0;font:inherit;text-align:left;font-weight:700;text-decoration:underline;cursor:pointer}
.day-product-totals{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 20px}.day-product-totals>div{padding:9px;border:1px solid var(--border);border-radius:7px}.day-product-totals strong{margin-left:8px}
.status-badge.searching{background:#e7efff;color:#20539b}
/* These are personal presentation choices; actions and information stay identical. */
:root[data-layout=journal] .month-weekdays,:root[data-layout=journal] .month-blank{display:none}
:root[data-layout=journal] .month-grid{display:flex;flex-direction:column;min-width:0}
:root[data-layout=journal] .month-day{display:grid;grid-template-columns:100px 190px minmax(0,1fr) 90px;align-items:start;min-height:0;gap:12px}
:root[data-layout=journal] .month-day-top{grid-column:1;grid-row:1}
:root[data-layout=journal] .day-totals{grid-column:2;grid-row:1 / span 2}
:root[data-layout=journal] .day-clients{grid-column:3;grid-row:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr))}
:root[data-layout=journal] .day-filter-note{grid-column:3;grid-row:2}
:root[data-layout=journal] .day-status-bar{display:none}
:root[data-layout=journal] .month-day-open{grid-column:4;grid-row:1;margin:0}
:root[data-layout=journal] .month-day>.holiday-badge{grid-column:1;grid-row:2}
:root[data-layout=journal] .shipment-board,:root[data-layout=journal] .production-board{display:flex;flex-direction:column;min-width:0}
:root[data-layout=journal] .day-column{display:grid;grid-template-columns:130px minmax(0,1fr)}
:root[data-layout=journal] .shipment-day,:root[data-layout=journal] .production-day{min-height:0;display:flex;flex-wrap:wrap;gap:8px}
:root[data-layout=journal] .load-card,:root[data-layout=journal] .line-slot{width:240px;margin:0}
:root[data-layout=journal] .capacity,:root[data-layout=journal] .day-stock{flex:0 0 100%}
/* Personal preferences */
#appearanceForm fieldset{border:0;padding:0;margin:0}#appearanceForm legend{font-weight:750;margin-bottom:12px;font-size:17px}
.appearance-layouts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.appearance-choice{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;align-items:center;padding:14px;border:2px solid #c7d3df;border-radius:10px;cursor:pointer;background:white}
.appearance-choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.appearance-choice input{width:18px;height:18px;accent-color:var(--accent)}.appearance-choice small{grid-column:1/-1;line-height:1.5;color:#52647a}
.appearance-mini{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:repeat(3,1fr);gap:5px;background:#d9e3ed;padding:6px;height:52px;border-radius:5px}
.appearance-mini i{display:block;background:white;border:1px solid #9bb0c5;border-top:7px solid var(--accent);border-radius:3px}
.mini-calm{background:#f5f6f8;gap:8px}.mini-calm i{border:1px solid #d5dce4;border-top:7px solid #e0e6ee}
.mini-zones{background:var(--accent-soft)}.mini-zones i{background:#eaf1f7}.mini-zones i:nth-child(2){background:#fff1d5}
.mini-journal{grid-template-columns:1fr;grid-template-rows:repeat(3,1fr)}.mini-journal i{border:1px solid #c1cedb;border-left:18px solid var(--accent)}
.appearance-colors{display:flex;flex-wrap:wrap;gap:12px}.appearance-colors label{display:flex;align-items:center;gap:7px;padding:10px;border:1px solid var(--border);border-radius:8px;cursor:pointer}.appearance-colors input{width:17px;height:17px;accent-color:var(--accent)}.appearance-colors span{width:22px;height:22px;border-radius:50%}
@media(max-width:1100px){.month-grid,.month-weekdays{grid-template-columns:repeat(7,minmax(150px,1fr));min-width:1100px}.month-calendar{overflow-x:auto}.day-detail-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.month-grid{display:grid;grid-template-columns:1fr;min-width:0}.month-weekdays,.month-blank{display:none}.month-day{min-height:0}.month-day-open{margin-top:8px}.day-clients{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.appearance-layouts{grid-template-columns:1fr}.appearance-colors label{flex:1 0 40%}:root[data-layout=journal] .month-day{display:flex;flex-direction:column}:root[data-layout=journal] .day-column{display:block}:root[data-layout=journal] .load-card,:root[data-layout=journal] .line-slot{width:100%}.day-detail-table{min-width:780px}}

/* 0.10.9: wrapped navigation must never be clipped by a one-row fixed height. */
.topnav{height:auto;max-height:none;overflow:visible;min-width:0}
.mobile-nav-toggle{display:none}
.picker-day{min-width:0;max-width:100%}
.picker-day small{white-space:normal;overflow-wrap:anywhere;max-width:100%;line-height:1.2;text-align:center}
@media(max-width:800px){
  .topbar{min-width:0}
  .mobile-nav-toggle{display:flex;grid-column:1/-1;grid-row:3;align-items:center;gap:10px;justify-content:space-between;width:100%;min-width:0;min-height:48px;padding:10px 12px;margin-bottom:12px;border:1px solid currentColor;border-radius:8px;color:inherit;background:transparent;text-align:left}
  .mobile-nav-toggle strong{font-size:13px;min-width:0;overflow-wrap:anywhere}
  .topnav{display:none;grid-row:4;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;height:auto;padding:0 0 12px;overflow:visible;gap:5px}
  .topnav.mobile-open{display:grid}
  .topnav .nav-button{min-width:0;width:100%;min-height:48px;padding:10px 8px;white-space:normal;text-align:left;border:1px solid #748da655;border-radius:7px}
  body[data-single-view=true] .mobile-nav-toggle{display:none}
  .picker-day small{font-size:10px}
}
/* Missing shift output: visible next steps, with room for long line names on phones. */
.shift-reminders { margin: 16px 0 24px; padding: 18px; border: 2px solid #b77b27; border-radius: 16px; background: #fff9ed; color: #43321b; }
.shift-reminders h2 { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:0; font-size:1.12rem; }
.shift-reminders > p { margin:10px 0 16px; }
.shift-reminder-count { padding:4px 10px; border-radius:20px; background:#79531d; color:white; font-size:.85rem; }
.shift-reminder-card { background:#fff; color:#20313e; border:1px solid #ddcbb0; border-radius:12px; padding:14px; margin:10px 0; }
.shift-reminder-heading { display:flex; flex-wrap:wrap; gap:8px 20px; justify-content:space-between; margin-bottom:12px; }
.shift-reminder-heading span { font-size:.9rem; }
.shift-reminder-slots { display:flex; flex-wrap:wrap; gap:10px; }
.shift-reminder-slot { flex:1 1 210px; min-width:0; padding:12px; background:#fff5df; border-left:4px solid #b77b27; border-radius:8px; display:grid; gap:8px; align-content:start; }
.shift-reminder-slot.is-reported { background:#edf5f0; border-color:#528568; }
.shift-reminder-slot b,.shift-reminder-slot span { overflow-wrap:anywhere; }
.shift-reminder-slot small { font-weight:400; }
.shift-reminder-slot .button { justify-self:start; white-space:normal; }
.shift-reminders summary { padding:10px 0; cursor:pointer; font-weight:600; }
.quick-entry-guide h2 { margin:0 0 8px; }
.quick-entry-guide p { margin:6px 0; }
.quick-roster { border:1px solid #b7c8d6; padding:14px; border-radius:10px; background:#f4f8fb; }
@media(max-width:600px) { .shift-reminders {padding:12px;} .shift-reminder-card {padding:10px;} .shift-reminder-slot {flex-basis:100%;} }
.line-accounting-panel { margin-bottom:20px; }
.line-accounting-list {display:grid;gap:12px;}
.line-accounting-row {display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(170px,1fr) minmax(155px,1fr);align-items:center;gap:16px;padding:14px;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:10px;background:#f7f9fc;}
.line-accounting-row small {display:block;margin-top:6px;color:#52647a;}
.line-accounting-row label {min-width:0;}
.line-accounting-row label[hidden] {display:none;}
.line-accounting-row select,.line-accounting-row input {width:100%;min-width:0;}
#lineAccountingForm > button {align-self:start;}
@media(max-width:720px) { .line-accounting-row {grid-template-columns:1fr;gap:10px;} }
.employee-preview{position:sticky;top:0;z-index:35;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;background:#fff2cb;color:#553b0d;border-bottom:2px solid #c58e27;box-shadow:0 2px 6px #26384a15}
.employee-preview[hidden]{display:none}
.employee-preview p{margin:4px 0 0;font-size:13px;line-height:1.4}
.employee-preview .button{flex-shrink:0;background:#fff;border-color:#b08024;color:#553b0d;text-decoration:none;text-align:center}
@media(max-width:720px){.employee-preview{position:relative;padding:12px 16px;flex-direction:column;align-items:stretch;gap:10px}.employee-preview .button{width:100%;white-space:normal}}
.access-preview-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.access-preview-controls label{flex:1;min-width:200px;max-width:560px}
.access-preview-controls a{text-decoration:none;text-align:center;white-space:normal}
@media(max-width:720px){.access-preview-controls{align-items:stretch;flex-direction:column}.access-preview-controls label{max-width:none;min-width:0}}
