/* Approved HTML: schedule board, weekly calendar, requests and shared route. */
.pc-enabled{--accent:#def65c;--lime:#def65c;--yellow:#f5bb4c;--green:#57c992;--violet:#a991f4}
.requests-view,.schedule-view{min-width:0}
.requests-view .page-head,.schedule-view .page-head{align-items:flex-start;gap:16px;margin-bottom:21px}
.requests-view h1,.schedule-view h1{font-size:clamp(29px,2.5vw,40px);font-weight:770;letter-spacing:-.048em;line-height:1.15}
.requests-view .page-head p,.schedule-view .page-head p{font-size:13px;color:#90949f;margin:10px 0 0}
.schedule-actions,.filters-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.filters-row{margin:0 0 16px}
.pc-shell .seg{display:flex;gap:3px;background:#282828;border:1px solid #333333;padding:4px;border-radius:999px;max-width:100%}
.pc-shell .seg button{border:0;color:#888d98;border-radius:999px;font-size:12px;padding:8px 14px;white-space:nowrap;background:transparent;min-height:36px}
.pc-shell .seg button[aria-pressed=true]{background:#efeff1;color:#111111;font-weight:750}
.schedule-view .weekbar{display:block;padding:0;border:0;background:none}
.schedule-view .days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:100%;margin-top:13px;overflow:visible}
.schedule-view .daybtn{background:#202020;border:1px solid #333333;border-radius:13px;min-width:0;width:auto;padding:12px 3px;display:flex;flex-direction:column;align-items:center;gap:2px;color:#a5a9b1;min-height:84px}
.schedule-view .daybtn[aria-pressed=true]{background:#def65c;border-color:#def65c;color:#111111;box-shadow:none}
.schedule-view .daybtn .wd{font-size:11px;font-weight:580;text-transform:uppercase;color:inherit}
.schedule-view .daybtn .dd{font-size:23px;font-weight:800;letter-spacing:-.05em;line-height:1.2;color:inherit}
.schedule-view .daybtn .n{font-size:12px;font-weight:690;min-height:14px;color:inherit;background:none;padding:0}
.schedule-view .weekbar>[data-day]{margin-top:10px}
.schedule-view .status-legend{font-size:11px;color:#999da8;padding:16px 2px;margin:0}
.schedule-view .board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;align-items:stretch}
.schedule-view .bcol{background:#202020;border:1px solid #333333;border-radius:18px;padding:13px;min-height:290px;min-width:0}
.schedule-view .bcol-h{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:670;margin-bottom:15px;padding:0 0 0 4px;line-height:normal}
.schedule-view .count{margin-left:auto;font-size:11px;color:#8e929a;background:#282828;border-radius:8px;padding:4px 8px}
.schedule-view .bempty{padding:52px 4px;text-align:center;font-size:12px;color:#7a7f88}
.schedule-card{display:block;width:100%;text-align:left;background:#202020;border:1px solid #333333;border-left:3px solid #bfc3ca;color:#f5f5f7;padding:15px 12px;border-radius:14px;min-width:0;cursor:pointer}
.schedule-card.in_progress{border-left-color:#f5bb4c;background:linear-gradient(#f5bb4c08,#f5bb4c08),#202020}
.schedule-card.done{border-left-color:#57c992;background:linear-gradient(#57c99208,#57c99208),#202020}
.schedule-card.postponed{border-left-color:#a991f4;background:linear-gradient(#a991f408,#a991f408),#202020}
.schedule-card.overdue{border-left-color:#f3766b;background:linear-gradient(#f3766b0b,#f3766b0b),#202020}
.schedule-card:hover{background:#282828}
.board-top{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px}
.schedule-card .pill{font-size:10px;padding:4px 7px;white-space:nowrap}
.board-route{margin-top:12px;display:flex;flex-direction:column;gap:8px}
.board-route .point{display:flex;gap:9px;align-items:flex-start}
.board-route .point i{height:8px;width:8px;background:#8f949d;border-radius:50%;margin-top:3px;flex:none}
.board-route .point .last{background:#def65c}
.board-route b{display:block;font-size:12px;line-height:1.35;margin-bottom:4px;overflow-wrap:anywhere}
.board-route small{color:#aaaeb5;font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.board-created{color:#9399a3;font-size:11px;margin-top:11px}
.recurring{margin-top:28px}
.requests-view .ocard{background:#202020;border-radius:16px;border:1px solid #333333;border-left:3px solid #626771;padding:16px}
.requests-view .oc-in_progress{border-left-color:#f5bb4c}.requests-view .oc-done{border-left-color:#57c992}
.requests-view .tplcard{background:#202020;border:1px solid #333333;border-radius:19px;padding:20px}
.requests-view .requests-table{width:100%;border-collapse:collapse;table-layout:fixed}
.requests-table th{text-align:left;color:#858994;font-size:11px;padding:13px 12px;border-bottom:1px solid #333333}
.requests-table td{font-size:12px;padding:17px 12px;border-bottom:1px solid #282828;vertical-align:middle;overflow-wrap:anywhere}
.requests-table tr[data-open]{cursor:pointer}.requests-table tr[data-open]:hover{background:#282828}
.requests-table th:first-child{width:65px}.requests-table th:nth-child(2){width:100px}.requests-table th:last-child{width:120px}
.requests-mobile{display:none}
/* Both courier.js and plan.js use route-view.js and these exact route styles. */
.pc-content .route-view{position:relative;padding:2px 0 0 67px;display:flex;flex-direction:column;gap:18px;max-width:900px;margin:24px 0;min-width:0}
.route-view:before{content:'';position:absolute;left:20px;top:33px;bottom:45px;border-left:2px dashed #545862;z-index:0}
.route-view .stop{display:block;position:relative;min-height:0;min-width:0;padding:0}
.route-view .stop:before{display:none}
.route-view .index{position:absolute;top:25px;left:-62px;width:30px;height:30px;border:5px solid #808590;border-radius:50%;background:#202020;box-shadow:0 0 0 5px #111111;z-index:1}
.route-view .index.done{border-color:#57c992;background:#57c992}
.route-view .index.current{border-color:#def65c;background:#def65c;box-shadow:0 0 0 5px #111111,0 0 19px #d8fb555c}
.route-view .stopcard{background:linear-gradient(130deg,#202020,#202020);border:1px solid #3a3e48;border-radius:20px;padding:19px 20px 17px;min-width:0;margin:0;cursor:default;transform:none}
.route-view .stopcol{min-width:0;width:100%}
.route-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.route-top>b{font-size:19px;font-weight:780}
.route-view .address{font-size:17px;font-weight:740;line-height:1.35;letter-spacing:-.015em;margin:0 0 4px;overflow-wrap:anywhere}
.route-view .client{font-size:12px;color:#979ca6;white-space:normal;margin:0;overflow-wrap:anywhere}
.route-view .hint{font-size:12px;overflow-wrap:anywhere;margin:8px 0;color:#979ca6}
.route-view .status{font-size:11px;background:#404040;color:#bfc2cb;border-radius:999px;padding:5px 10px}
.route-view .status.done{background:#57c99222;color:#57c992}.route-view .status.in_progress{background:#f5bb4c22;color:#f5bb4c}.route-view .status.postponed{background:#a991f422;color:#a991f4}
.route-view .timing{margin:11px 0 2px;padding:0;border:0;font-size:12px;color:#d3d7dc;line-height:1.6}
.route-view .timing b{color:#def65c}
.pc-content .route-view .actionbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:17px 0 0;padding:0}
.pc-content .route-view .actionbar>*{display:flex;align-items:center;justify-content:center;min-width:0;width:100%;min-height:41px;margin:0;padding:11px 7px;font:670 12px/1.2 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;white-space:nowrap;background:#282828;border:1px solid #333333;color:#e4e6ea;border-radius:13px;text-decoration:none}
.pc-content .route-view .actionbar .startbtn{background:#def65c;color:#141510;border-color:transparent}
.pc-content .route-view .actionbar button:disabled{opacity:.42;cursor:not-allowed}
@media(max-width:800px){
 .requests-view .page-head,.schedule-view .page-head{flex-wrap:wrap}
 .schedule-actions{gap:8px}.schedule-view .page-head .row{width:100%}
 .schedule-view .days{gap:5px}.schedule-view .daybtn{padding:9px 1px;border-radius:16px;min-height:76px}
 .schedule-view .daybtn .wd{font-size:10px}.schedule-view .daybtn .dd{font-size:21px}
 .schedule-view .board{grid-template-columns:repeat(4,minmax(230px,1fr));overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:10px}
 .requests-table{display:none}.requests-mobile{display:flex;flex-direction:column;gap:10px}
 .pc-content .route-view{padding-left:42px;gap:18px}
 .route-view:before{left:11px;top:27px;bottom:32px}
 .route-view .index{left:-41px;width:22px;height:22px;top:21px;border-width:4px}
 .route-view .stopcard{padding:16px 14px;border-radius:20px}
 .route-view .address{font-size:15px}.route-top>b{font-size:17px}
 .pc-content .route-view .actionbar{gap:5px}.pc-content .route-view .actionbar>*{font-size:10.4px;padding:11px 3px}
 .filters-row .seg{flex-wrap:wrap}
}
.pc-content .route-cta{display:flex;align-items:center;justify-content:space-between;width:100%;background:linear-gradient(110deg,#282828,#202020);border:1px solid #454952;padding:14px 21px;color:#edf0f2;border-radius:999px;font-weight:690;font-size:15px;text-align:left;margin:0 0 18px;min-height:48px}
.pc-content .heading{padding:0;margin:24px 0 14px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pc-content .heading h2{font-size:20px;margin:0}.pc-content .heading .hint{font-size:12px;margin:0}
.pc-content>.phone{box-shadow:none;overflow:visible}
.pc-content .notice:empty{display:none}.pc-content .eyebrow{margin:8px 0}
.pc-content .dates{padding:12px 0}
.pc-content .management #filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}
.pc-content .management #filters label{flex:0 1 280px;min-width:0;font-size:12px;color:#90949f}
.pc-content .management #filters label:nth-child(2){flex-basis:180px}
.pc-content .management #filters input,.pc-content .management #filters select{background:#282828;border:1px solid #404040;border-radius:12px;color:#f5f5f7;padding:10px 12px;margin-top:7px;font:inherit}
.pc-content .management #filters>button{width:auto;padding:11px 15px;margin:0;min-height:43px;border-radius:13px}
@media(max-width:600px){.pc-content .management #filters label{flex:1 1 140px}.pc-content .management #filters label:nth-child(2){flex-basis:140px}}
/* Long report names must not enlarge the page's grid tracks. Tables scroll locally. */
.pc-content .cols2{grid-template-columns:repeat(2,minmax(0,1fr))}
.pc-content .cols2>.card{min-width:0}
@media(max-width:760px){.pc-content .cols2{grid-template-columns:minmax(0,1fr)}}
.schedule-view .bdot{width:8px;height:8px;border-radius:50%}
.schedule-view .dayhead{margin:26px 0 14px}.schedule-view .dayhead h2{font-size:23px;letter-spacing:-.04em}
.schedule-view .status-legend i{width:8px;height:8px;border-radius:50%}
@media(max-width:800px){.schedule-view .dayhead h2{font-size:20px}}

.schedule-view .dayhead>.muted{margin-left:auto}
.overview-view h2{font-size:19px;letter-spacing:-.025em;margin:28px 0 14px}.overview-note{font-size:12px;color:#9298a2;line-height:1.6;margin:0 0 16px}.overview-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.overview-kpi{background:#202020;border:1px solid #333333;border-radius:16px;padding:20px;min-width:0}.overview-kpi span{display:block;font-size:12px;color:#9ba0aa}.overview-kpi strong{display:block;font-size:29px;letter-spacing:-.04em;margin-top:12px;overflow-wrap:anywhere}.overview-two{display:grid;grid-template-columns:1.2fr 1fr;gap:14px}.overview-two .card{padding:22px;min-width:0}.overview-two h3{font-size:14px;margin:0 0 20px}.overview-percent{font-size:56px;font-weight:800;letter-spacing:-.06em;color:#def65c}.overview-progress{height:8px;border-radius:10px;background:#333333;overflow:hidden}.overview-progress i{display:block;height:100%;background:#def65c}.overview-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:21px}.overview-chart{display:flex;gap:12px;align-items:flex-end;height:210px}.overview-column{flex:1;min-width:0;text-align:center}.overview-column strong{font-size:12px;color:#def65c}.overview-column span,.overview-column small{display:block;font-size:10px;color:#999eaa;margin-top:6px}.overview-bar{height:140px;display:flex;align-items:end;padding:0 10%}.overview-bar i{display:block;width:100%;background:#def65c;border-radius:6px 6px 0 0}.overview-alerts{margin-top:22px}.overview-alerts summary{cursor:pointer}.overview-view>.overview-note:last-of-type{margin-top:16px}
@media(max-width:800px){.overview-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.overview-two{grid-template-columns:minmax(0,1fr)}.overview-kpi{padding:16px}.overview-kpi strong{font-size:26px}.overview-chart{gap:6px}.overview-column small{font-size:9px}}
.overview-kpi strong{margin:0}.overview-kpi span{margin-top:8px}.overview-percent{font-size:48px}.overview-two{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}.overview-view h2{margin-bottom:4px}.overview-view>.overview-kpis{margin-top:14px}.overview-chart{height:195px}
@media(max-width:800px){.overview-two{grid-template-columns:minmax(0,1fr)}}
/* Owner correction: board headings and tinted cards, without column panels. */
.schedule-view .board{align-items:start}
.schedule-view .bcol{background:transparent;border:0;border-radius:0;padding:0;min-height:0}
.schedule-view .schedule-card.in_progress{border-left-color:var(--st-work);background:linear-gradient(90deg,var(--st-work-bg),transparent 60%),var(--surface)}
.schedule-view .schedule-card.done{border-left-color:var(--st-done);background:linear-gradient(90deg,var(--st-done-bg),transparent 60%),var(--surface)}
.schedule-view .schedule-card.postponed{border-left-color:var(--st-post);background:linear-gradient(90deg,var(--st-post-bg),transparent 60%),var(--surface)}
.schedule-view .schedule-card.overdue{border-left-color:var(--st-over);background:linear-gradient(90deg,var(--st-over-bg),transparent 60%),var(--surface)}
.schedule-view .schedule-card:hover{border-top-color:var(--line);border-right-color:var(--line);border-bottom-color:var(--line)}
.reports-view h2{font-size:19px;margin:26px 0 8px}.reports-view>.overview-kpis{margin:18px 0 12px}.report-panels{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:14px}.report-panels>.card,.report-routes{padding:22px;min-width:0}.report-panels h3{font-size:14px;margin:0 0 16px}.report-panels .overview-note{margin-top:20px}.report-entry{display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;background:#282828;border-radius:11px;margin-bottom:8px;font-size:12px}.report-entry small{display:block;font-size:11px;color:#9aa0aa;margin-top:4px;overflow-wrap:anywhere}.report-entry a{color:inherit;font-weight:700}.report-entry strong{font-size:12px}.report-dot{width:9px;height:9px;border-radius:50%;background:#58c899;box-shadow:0 0 0 4px #293e34}.gap-entry .report-dot{background:#f7bf47;box-shadow:0 0 0 4px #4a3b24}.report-route{display:grid;grid-template-columns:minmax(0,1fr) 95px 100px;gap:12px;padding:15px 0;border-bottom:1px solid #333333;font-size:12px}.report-route b{overflow-wrap:anywhere}.report-route strong{color:#def65c;text-align:right}.report-route span{color:#9aa0aa;text-align:right}.report-orders{margin-top:24px;padding:20px}.report-orders summary{cursor:pointer}.reports-view .period-label{overflow-wrap:anywhere}.reports-view .filters{min-width:0}.reports-view .filters label{min-width:0}.reports-view select{max-width:100%}
@media(max-width:800px){.report-panels{grid-template-columns:minmax(0,1fr)}.report-panels>.card,.report-routes{padding:16px}.report-route{grid-template-columns:minmax(0,1fr) 65px 70px;gap:6px}.report-entry{gap:8px}.reports-view .period-nav{width:100%;justify-content:space-between}.reports-view .period-label{font-size:12px}.reports-view .filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.report-extra summary,.report-explain summary{cursor:pointer;color:#a2a8b1;font-size:12px}.report-extra .filters{margin-top:12px}.report-explain{margin:12px 0 18px}.report-explain p{margin-top:12px}.reports-view>.section{padding:16px}.reports-view>.section>.filters{max-width:280px}
.reports-view .filters select{width:100%}.reports-view>.section>.filters{width:280px;max-width:100%}.reports-view>.section>.filters>label{flex:1 1 100%;min-width:0}
.reports-view>.section>.filters{display:block}

/* One segment per stop, ending at the next node, independent of card height. */
.route-view:before{display:none}
.pc-content .route-track{padding-left:67px;display:flex;flex-direction:column;gap:18px;min-width:0}
.route-track .track-stop,.route-view .track-stop{position:relative;min-width:0;--track-x:-47px;--track-y:40px;--node-size:30px}
.track-stop>.track-line{position:absolute;left:var(--track-x);top:var(--track-y);bottom:calc(-18px - var(--track-y));border-left:2px dashed #545862;pointer-events:none}
.track-stop:last-child>.track-line{display:none}
.track-stop.track-done:has(+.track-done)>.track-line{border-left-style:solid;border-left-color:#57c992}
.track-stop>.track-node{position:absolute;left:calc(var(--track-x) - var(--node-size)/2 + 1px);top:calc(var(--track-y) - var(--node-size)/2);width:var(--node-size);height:var(--node-size);box-sizing:border-box;border:5px solid #808590;border-radius:50%;background:#202020;box-shadow:0 0 0 5px #111111;z-index:1;pointer-events:none}
.track-stop>.track-node.done{border-color:#57c992;background:#57c992}
.track-stop>.track-node.current{border-color:#ffbe4c;background:#ffbe4c}
.track-stop>.track-node.postponed{border-color:#a78bfa;background:#a78bfa}
@media(max-width:800px){
 .pc-content .route-track{padding-left:42px}
 .route-track .track-stop,.route-view .track-stop{--track-x:-30px;--track-y:32px;--node-size:22px}
 .track-stop>.track-node{border-width:4px}
}

.route-view .route-action-icon{width:16px;height:16px;flex:none;display:block}
.pc-content .route-view .actionbar>*{gap:6px}
.route-view .route-address{color:inherit;text-decoration:none}
.route-view .route-address:hover{text-decoration:underline}
.route-view .route-number{font-size:19px;font-weight:780;color:inherit;text-decoration:none}
@media(max-width:380px){.route-view .route-action-icon{width:13px;height:13px}.pc-content .route-view .actionbar>*{gap:3px}}
/* Plan uses the brand lime for postponed points, including the shared courier route. */
.schedule-view,.route-view{--st-post:#def65c;--st-post-bg:rgb(222 246 92 / 12%)}
.route-view .status.postponed{color:#def65c;background:#def65c22}
.route-view .track-node.postponed{border-color:#def65c;background:#def65c}
.schedule-view .seg button[aria-pressed=true]{background:#def65c;color:#111111}
.schedule-view .status-legend{display:flex;flex-wrap:nowrap;justify-content:space-between;gap:4px;white-space:nowrap}
.schedule-view .status-legend span{display:inline-flex;align-items:center;gap:3px}
@media(max-width:430px){.schedule-view .status-legend{font-size:clamp(9px,2.5vw,11px);padding:12px 0;gap:2px}.schedule-view .status-legend i{width:5px;height:5px;flex:none}}

.schedule-week-nav{display:flex;gap:8px;align-items:center;flex-wrap:nowrap}
@media(min-width:431px){.schedule-view .status-legend{justify-content:flex-start;gap:18px}}
/* Reports: geometry and presentation from the approved HTML reports() screen. */
.reports-view .page-head{align-items:flex-start;gap:16px;margin-bottom:21px}
.reports-view h1{font-size:clamp(29px,2.5vw,40px);font-weight:770;letter-spacing:-.048em;line-height:1.15}
.reports-view .page-head p{font-size:13px;color:#90949f;margin:10px 0 0}
.reports-view .report-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.reports-view .report-period-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.reports-view .tabs-strip{display:flex;gap:4px;padding:4px;background:#282828;border:1px solid #333333;border-radius:999px;max-width:100%}
.reports-view .tabs-strip button{border:0;border-radius:999px;background:transparent;color:#959aa4;padding:9px 17px;font-size:12px;font-weight:680;white-space:nowrap}
.reports-view .tabs-strip button[aria-pressed=true]{background:#f2f2f3;color:#202020}
.reports-view .period-nav{gap:8px;flex-wrap:nowrap}
.reports-view .period-label{font-size:11px;color:#959aa4;font-weight:400}
.reports-view .report-courier{min-width:180px;max-width:230px}
.reports-view .report-courier .field{margin:0}
.reports-view .report-courier select{font-size:12px;min-height:38px;padding:8px 12px;background:#282828;border:1px solid #404040;border-radius:11px}
.reports-view .report-extra{flex-basis:100%}
.reports-view .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:17px}
.report-kpi{background:#202020;border:1px solid #333333;border-radius:17px;padding:19px;min-width:0}
.report-kpi span{display:block;font-size:12px;color:#9196a0;margin-top:5px}
.report-kpi strong{display:block;font-size:31px;font-weight:800;line-height:1.2;letter-spacing:-.06em;overflow-wrap:anywhere}
.reports-view .report-section{margin:28px 0 14px}
.reports-view .report-section h2{margin:0 0 5px;font-size:19px;font-weight:720;letter-spacing:-.025em}
.reports-view .report-section p{margin:0}
.reports-view .card{border:1px solid #333333;background:#202020;border-radius:19px;padding:22px;min-width:0}
.reports-view .card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;min-width:0}
.reports-view .card-head h3{font-size:16px;margin:0;font-weight:700}
.reports-view .card-head svg{width:18px;height:18px;color:#969da6;flex:none}
.reports-view .card-head strong{font-size:12px;overflow-wrap:anywhere}
.reports-view .mini-meta{font-size:11px;color:#959aa4}
.report-track-row+.report-track-row{margin-top:24px}
.reports-view .shift-track{height:33px;display:flex;border-radius:9px;overflow:hidden;background:#383d47;margin:16px 0 8px}
.reports-view .segment{height:100%;min-width:0;flex:none;display:grid;place-items:center;font-size:10px;color:#111111;font-weight:750;overflow:hidden;white-space:nowrap}
.reports-view .segment.busy{background:#57c992}.reports-view .segment.report-gap{background:#f5bb4c}.reports-view .segment.unknown{background:#545b68}
.reports-view .shift-scale{display:flex;justify-content:space-between;gap:12px;color:#8d929e;font-size:11px}
.report-legend{display:flex;gap:15px;flex-wrap:wrap;color:#959aa4;font-size:11px;margin-top:16px}
.report-legend .key{display:inline-flex;align-items:center;gap:6px}
.report-legend .key:before{content:'';width:9px;height:9px;border-radius:3px;background:#545b68;flex:none}
.report-legend .key.busy:before{background:#57c992}.report-legend .key.report-gap:before{background:#f5bb4c}
.reports-view .report-entry{padding:11px;gap:13px}.reports-view .report-entry strong{overflow-wrap:anywhere}
.reports-view .report-routes{padding-top:10px;padding-bottom:10px}
.reports-view .report-route{grid-template-columns:minmax(0,1fr) 80px 100px;gap:10px;padding:13px 0}
.reports-view .report-route small{display:block;color:#8f95a0;font-size:11px;margin-top:6px}
.reports-view .report-route:last-child{border-bottom:0}
@media(max-width:1150px){.reports-view .report-panels{grid-template-columns:minmax(0,1fr)}}
@media(max-width:800px){
 .reports-view .page-head{flex-wrap:wrap;margin-bottom:17px}.reports-view .page-head p{font-size:12px}
 .reports-view .report-filter{gap:8px}.reports-view .tabs-strip button{padding:8px 12px}
 .reports-view .period-nav{width:auto}.reports-view .report-courier{width:195px}
 .report-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.report-kpi{padding:14px}.report-kpi span{font-size:11px}.report-kpi strong{font-size:27px}
 .reports-view .card{padding:15px;border-radius:17px}.reports-view .report-section{margin:24px 0 13px}.reports-view .report-section h2{font-size:17px}
 .reports-view .report-route{grid-template-columns:minmax(0,1fr) 55px 73px;gap:6px}
}
.report-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.reports-view .report-period-controls{flex-wrap:nowrap}.reports-view .report-period-controls .period-label{white-space:nowrap;font-size:11px}.report-explain{margin-top:16px}
@media(max-width:380px){.reports-view .tabs-strip button{padding:8px 10px}.reports-view .report-period-controls{gap:8px}}
/* Owner-approved compact toolbars: one row even on a 320px phone. */
.requests-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.requests-toolbar .seg{margin-left:auto;flex:none}
.schedule-view .schedule-actions{width:100%;flex-wrap:nowrap;justify-content:space-between;gap:6px}
.schedule-view .schedule-week-nav{margin-left:auto;gap:5px}
.schedule-view .page-head{flex-wrap:wrap}
@media(max-width:800px){
 .requests-toolbar>.btn{font-size:12px;padding:9px 11px;white-space:nowrap}
 .requests-toolbar>.btn svg{width:15px;height:15px}
 .requests-toolbar .seg button{padding:7px 10px;font-size:11px}
 .schedule-view .schedule-actions .seg button{font-size:11px;padding:7px 9px;min-height:32px}
 .schedule-view .schedule-actions .seg svg{width:13px;height:13px}
 .schedule-view .schedule-week-nav .btn{font-size:11px;padding:7px 9px;min-height:34px}
 .schedule-view .page-head{gap:14px;margin-bottom:10px}
}
@media(max-width:350px){
 .requests-toolbar>.btn{font-size:11px;padding:9px}.requests-toolbar .seg button{padding:7px 8px}
 .schedule-view .schedule-actions .seg button{font-size:10px;padding:7px 7px}.schedule-view .schedule-actions .seg svg{display:none}
 .schedule-view .schedule-week-nav{gap:3px}.schedule-view .schedule-week-nav .btn{padding:7px;font-size:10px}
}
@media(min-width:801px){.schedule-view .page-head{flex-wrap:nowrap}.schedule-view .schedule-actions{width:auto;justify-content:flex-end}.schedule-view .schedule-week-nav{margin-left:8px}}

/* Period and courier form one compact row; range remains readable below it. */
.reports-view .report-period-controls{display:grid;grid-template-columns:max-content minmax(0,230px);width:100%;gap:8px 12px;align-items:center}
.reports-view .report-period-controls>.period-label{grid-column:1/-1;justify-self:start}
.reports-view .report-courier{min-width:0;width:100%;max-width:230px}
.reports-view .report-courier select{width:100%;height:38px;min-width:0}
@media(max-width:800px){
 .reports-view .report-period-controls{grid-template-columns:auto minmax(0,1fr);column-gap:8px}
 .reports-view .tabs-strip{gap:0;padding:3px}
 .reports-view .tabs-strip button{padding:8px;font-size:11px}
 .reports-view .report-courier select{padding:8px 4px;font-size:11px}
}

.shift-editor{margin:12px 0;color:#a2a8b1;font-size:12px}.shift-editor>summary{cursor:pointer}.shift-editor-body{margin-top:12px;padding:16px;border:1px solid #333333;border-radius:14px;background:#202020}.shift-form{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;align-items:end}.shift-form .field{min-width:0}.shift-form .input{width:100%;min-width:0}.shift-next,.shift-form p{grid-column:1/-1}.shift-error{color:#ff7770}.shift-form .btn{font-size:12px}
@media(max-width:800px){.shift-form{grid-template-columns:1fr 1fr}.shift-form>.field:first-child{grid-column:1/-1}}

.shift-form .field,.shift-form p{margin:0}.shift-form .shift-error:empty{display:none}
.distribution-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.distribution-values>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.distribution-values .key{font-size:12px;color:var(--muted)}
.distribution-values strong{font-size:18px}
.distribution-values small{color:var(--muted)}
#report-detail-day{width:145px;min-width:0}
#order-extra{width:100%}#order-extra>summary,.tpl-more>summary,.request-extra>summary{cursor:pointer;padding:8px 0;color:var(--muted)}#order-extra>h3{font-size:14px;margin-top:18px}.tpl-more{margin-left:auto}.request-extra{margin-left:auto}
.reports-view .report-panels{margin-top:20px}.requests-table td small{display:block;margin-top:4px;color:var(--muted)}
.shift-track.shift-track-empty{background:transparent;outline:1px dashed #545b68;outline-offset:-1px}

/* Percent labels stay readable; narrow segments retain the complete legend. */
.reports-view .segment{container-type:inline-size}
.reports-view .segment>span{font-size:11px}
.reports-view .segment.unknown{color:#fff}
@container (max-width: 34px){.reports-view .segment>span{visibility:hidden}}
