/* Dispatch workspace: calm surfaces, precise typography, legible operational data. */
:root{--navy:#102b33;--blue:#107c70;--green:#107c70;--line:#e1e8e9;--muted:#708187;color:#18373f;background:#f4f7f7}
body{font-size:14px}button{border-radius:8px;transition:background .15s,box-shadow .15s,transform .15s}button:active{transform:translateY(1px)}button.primary:hover{background:#08675d;border-color:#08675d}button svg{width:17px;height:17px;flex:none}input:focus,textarea:focus,select:focus{border-color:var(--green);outline:2px solid #107c701b}.shell{grid-template-columns:234px minmax(0,1fr)}.sidebar{padding:30px 17px 22px;background:linear-gradient(160deg,#102e36,#112930);overflow-y:auto}.brand{padding-bottom:32px;font-size:24px;letter-spacing:-1px}.brand svg{color:#6cd1b7}.brand small{font-size:8px;letter-spacing:1.8px;color:#8bb0b7}.sidebar .nav-label{font-size:9px;color:#668b94;margin-bottom:7px}.nav-button{font-size:12px;padding:12px 13px;gap:11px;min-height:44px;margin:2px 0;color:#a9c3c8;border-radius:8px}.nav-button:hover{background:#ffffff09;color:#fff}.nav-button.active{background:#ffffff10;color:#fff;box-shadow:inset 3px 0 #67ceb4}.nav-icon{display:inline-flex;width:18px;color:inherit}.nav-icon svg{width:19px;height:19px}.nav-count{margin-left:auto;background:#e1a75e;color:#122b33;font-size:10px;padding:2px 5px;border-radius:4px}.sidebar-bottom{margin-top:32px;flex:1;align-content:end;border-top:0;padding-top:24px;color:#6e969f}.sidebar-bottom strong{font-size:12px;line-height:1.5}.version{color:#5f858d;font-size:9px}.topbar{height:76px;padding:0 36px;border-bottom:1px solid #e1e8e9;background:#ffffffed}.breadcrumbs{font-size:11px!important}.topbar-actions{gap:9px}.topbar-actions button{font-size:11px}.company-select{background:#f7f9f9;border-color:#e4eaea;max-width:235px;font-size:11px}.save-state{color:#7f9297}.avatar{background:#e5f4ef;color:#207564}.workspace{max-width:1600px;padding:34px 36px 50px}.page-heading{align-items:center;margin-bottom:27px}.page-heading h1{font-size:30px;letter-spacing:-1.1px;color:#17383f;font-weight:800;line-height:1.25}.page-heading p{font-size:12px;line-height:1.7;max-width:660px}.eyebrow{font-size:9px;letter-spacing:1.8px}.heading-actions button{font-size:12px;padding:10px 14px}.card{border-color:#e0e8e8;border-radius:12px;box-shadow:0 3px 8px #0b2d3603}.card-head{padding:21px 23px;border-color:#e8eded}.card-head h3{font-size:13px;font-weight:800;letter-spacing:-.2px}.card-head p{font-size:11px;line-height:1.6;max-width:580px}.card-body{padding:23px}.stats{gap:17px;margin-bottom:25px}.stat{padding:20px 22px;border-radius:11px;border-color:#e1e8e8;position:relative;overflow:hidden;box-shadow:0 3px 8px #0b2d3603}.stat:before{content:'';position:absolute;width:4px;height:29px;top:24px;left:0;background:#c4d5d9;border-radius:0 2px 2px 0}.stat.teal:before{background:#29a78d}.stat.amber:before{background:#dca146}.stat-label{font-size:10px;letter-spacing:.3px;font-weight:600}.stat strong{font-size:32px;line-height:1.2;font-weight:800;color:#173b43;margin-top:13px}.stat strong em{font-size:15px;font-style:normal;font-weight:500;color:#84969b;letter-spacing:-.3px}.stat.teal strong{color:#187b69}.stat.amber strong{color:#a86f23}.stat small{font-size:10px;margin-top:9px}.badge{border-radius:4px;font-size:9px;font-weight:700;letter-spacing:.5px;padding:5px 8px}.badge.green{background:#e9f7f0;color:#25846d}.badge.amber{background:#fff3dc;color:#a87329}th{font-size:9px;letter-spacing:.65px;background:#f8fafa;padding:13px 17px;color:#7d9095}td{font-size:11px;padding:15px 17px;border-color:#edf1f1}td strong{color:#2a4a52}.load-id{color:#157e70}.cell-detail{display:block;color:#7b8e94;font-size:10px;margin-top:5px;max-width:330px;line-height:1.6}.meter{height:5px;background:#edf2f1;min-width:90px;max-width:240px;border-radius:5px;margin:7px 0;overflow:hidden}.meter i{display:block;height:100%;background:#38a98f;border-radius:5px}.meter.amber i{background:#dea54d}.table-footer{font-size:10px;padding:15px 22px}.notice{font-size:11px;border-radius:8px;background:#eef5f7;color:#386570;border-color:#dce9ed}.notice.warning{background:#fff8eb;color:#946c2c;border-color:#f2e2bf}.notice.success{background:#eef8f2;color:#2c7e64}.steps{border-radius:10px;padding:15px 21px;font-size:11px;gap:23px}.current .step-number{background:#e3f4ed;color:#1e826b}.steps .current{color:#20725f}.step-number{font-size:10px}.overview-banner{display:flex;justify-content:space-between;gap:30px;align-items:center;padding:30px 34px;border-radius:14px;background:radial-gradient(ellipse at right top,#2b665e88,transparent 60%),#143c42;color:#fff;margin-bottom:24px;position:relative;overflow:hidden}.overview-banner:after{content:'';position:absolute;width:380px;height:380px;border:1px solid #ffffff07;right:-30px;top:-190px;border-radius:50%;pointer-events:none}.overview-banner h2{font-size:25px;letter-spacing:-.8px;margin:16px 0 9px;font-weight:700}.overview-banner p{font-size:12px;color:#a8c8c9;margin:0;max-width:680px;line-height:1.8}.live-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #76bbad40;border-radius:20px;padding:5px 9px;font-size:8px;letter-spacing:1.1px;color:#a2dfc9}.live-pill i{height:5px;width:5px;background:#75d2af;border-radius:50%}.coverage-ring{width:116px;height:116px;flex:none;border-radius:50%;background:conic-gradient(#79d5b7 var(--coverage),#ffffff15 0);display:grid;place-items:center}.coverage-ring>span{display:flex;width:99px;height:99px;background:#20494c;border-radius:50%;align-items:center;justify-content:center;flex-direction:column}.coverage-ring strong{font:800 25px Manrope,Arial}.coverage-ring small{font-size:7px;letter-spacing:.9px;color:#9ac3bf;margin-top:6px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:22px}.dashboard-grid>.card{align-self:start}.chart-legend{display:flex;gap:19px;padding:20px 24px 0;font-size:10px;color:#7b8d91}.chart-legend>span,.timeline-legend>span{display:flex;align-items:center;gap:7px}.legend-dot{display:inline-block;height:8px;width:8px;border-radius:2px;background:#9eb8c2}.legend-dot.muted-dot{background:#d6e2e3}.legend-dot.teal-dot{background:#3fa98c}.hour-chart{display:flex;height:230px;padding:35px 25px 25px;gap:10px;overflow:auto}.hour-column{flex:1;min-width:32px;display:flex;flex-direction:column;align-items:center;gap:11px;justify-content:end}.hour-column small{font-size:9px;color:#89999d}.bar-pair{height:150px;display:flex;align-items:end;gap:4px;width:100%;justify-content:center;border-bottom:1px solid #eaf0ef}.chart-bar{width:38%;max-width:22px;min-height:1px;border-radius:4px 4px 0 0;position:relative}.chart-bar span{position:absolute;top:-16px;font-size:9px;color:#6b878a;text-align:center;width:100%;font-weight:600}.chart-bar.required{background:#dce7e7}.chart-bar.actual{background:linear-gradient(#74c4a8,#329b80)}.insight-list{padding:3px 18px 9px}.insight{border:0;white-space:normal;text-align:left;display:flex;width:100%;padding:18px 3px;border-radius:0;align-items:flex-start;border-bottom:1px solid #edf2f1;background:white;gap:10px;justify-content:start}.insight:last-child{border-bottom:0}.insight:hover{background:#fafcfb}.insight>svg{width:14px;height:14px;margin-left:auto;margin-top:4px;color:#97a9ac;flex:none}.insight-icon{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#eaf3f5;color:#5e8e9c;flex:none}.insight-icon svg{height:14px;width:14px}.insight.warning .insight-icon{background:#fff4de;color:#b78434}.insight.critical .insight-icon{background:#fcece8;color:#bc6a58}.insight.success .insight-icon{background:#e7f6ed;color:#2b8c6a}.insight strong{display:block;font-size:11px;line-height:1.6;color:#36555b}.insight small{display:block;font-size:10px;font-weight:400;color:#8a9a9e;line-height:1.8;margin-top:4px}.workload-list{padding:3px 22px 7px}.workload-item{padding:17px 0;border-bottom:1px solid #edf1f1}.workload-item:last-child{border-bottom:0}.workload-item>div:first-child{display:flex;align-items:center;gap:10px}.driver-initial{height:31px;width:31px;display:grid;place-items:center;background:#edf5f3;border-radius:9px;color:#518a7d;font-size:9px;font-weight:700;flex:none}.workload-item strong{font-size:11px;line-height:1.5}.workload-item strong small{display:block;color:#8c9ba0;font-size:9px;font-weight:400}.workload-item b{font-size:11px;font-weight:600;margin-left:auto}.workload-item>small{font-size:9px;color:#8e9fa2}.workload-item .meter{max-width:none;margin-top:12px}.empty-icon{background:#edf7f2;display:grid;place-items:center;width:45px;height:45px;margin:0 auto 18px;border-radius:12px;color:#3a9982}.empty-icon svg{height:23px;width:23px}.empty{font-size:12px}.empty strong{font-family:Manrope;font-size:15px}.empty p{font-size:12px;line-height:1.8}.empty button{font-size:11px}.report-tabs{display:flex;gap:4px;padding:5px;background:#e9efee;border-radius:9px;margin:0 0 23px;width:max-content;max-width:100%;overflow:auto}.report-tabs button{background:none;border:0;font-size:11px;color:#7a8e91;padding:10px 17px}.report-tabs button.active{background:#fff;color:#276f60;box-shadow:0 1px 3px #123e3812}.report-tabs button:hover{color:#276f60}.allocation-list{padding:22px 25px}.allocation-list>div{margin-bottom:24px}.allocation-list strong{font-size:11px}.allocation-list small{color:#889b9e;font-size:10px;display:block;line-height:1.8}.allocation-bar{height:14px;display:flex;overflow:hidden;border-radius:5px;background:#edf1f1;margin:10px 0}.allocation-bar i{display:block;height:100%}.travel{background:#c5d9df}.pickup{background:#8bb8ca}.unload{background:#54b79c}.late{background:#e2ab57}.return{background:#d8e1e3}.other{background:#e1e8e8}.timeline-legend{display:flex;gap:20px;margin-bottom:20px;font-size:10px;color:#7b8e94;flex-wrap:wrap}.timeline-scroll{overflow:auto}.timeline{min-width:1000px;padding-bottom:12px}.timeline-header,.timeline-row{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:center}.timeline-header{height:55px;background:#f8fafa;border-bottom:1px solid #edf1f1;font-size:9px;color:#7b9299;padding:0 28px}.time-scale{position:relative;height:20px;margin:0 18px}.time-scale span{position:absolute;transform:translateX(-50%);font-size:9px;white-space:nowrap;top:5px}.timeline-row{height:80px;border-bottom:1px solid #edf1f1;padding:0 28px}.timeline-row:last-child{border-bottom:0}.timeline-name strong{display:block;font-size:11px;color:#3d5961}.timeline-name small{font-size:9px;color:#8c9da2;display:block;margin-top:6px}.timeline-track{position:relative;height:34px;background:repeating-linear-gradient(to right,#edf2f2 0,#edf2f2 1px,transparent 1px,transparent 8.3333%);margin:0 18px}.timeline-block{position:absolute;height:30px;top:2px;display:grid;align-items:center;border-radius:3px;border:1px solid #ffffff70;overflow:hidden;padding:0 2px}.timeline-block span{font-size:9px;text-align:center;font-weight:700;color:#214c50;white-space:nowrap}.timeline-block.travel{opacity:.7}.timeline-block.late span{color:#6e4c1b}.timeline-empty{font-size:10px;color:#94a4a8;line-height:34px;padding-left:15px}.planning-controls .card-body{display:flex;gap:20px;align-items:center;padding:18px 22px}.planning-controls label{min-width:190px;font-size:10px}.planning-controls .card-body>div{margin-right:auto}.planning-controls strong{display:block;font-size:11px}.planning-controls small{display:block;font-size:10px;color:#8c9a9f;margin-top:6px}.planning-controls button{font-size:11px}.lab-grid{display:grid;grid-template-columns:minmax(340px,1fr) minmax(0,1.2fr);gap:22px}.lab-grid .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-grid .span4{grid-column:span 2}.lab-grid .span2{grid-column:span 2}.lab-grid p{font-size:11px;margin:0}.lab-grid label{font-size:10px}.decision-list{padding:22px 28px 5px 48px;margin:0;color:#62a18f}.decision-list li{padding-left:6px;margin-bottom:20px;font-size:12px;font-weight:600}.decision-list strong{color:#36595e;font-size:11px;display:block}.decision-list span{color:#8a9b9f;font-size:10px;display:block;margin-top:5px;line-height:1.8;font-weight:400}details.card>summary{padding:18px 22px;cursor:pointer;font-size:12px;font-weight:700;display:flex;align-items:center;gap:10px}details.card>summary:before{content:'+';color:#78a49c;font-size:18px}details.card[open]>summary:before{content:'−'}details.card[open]>summary{border-bottom:1px solid var(--line)}details.card>summary svg{width:18px;height:18px}.routing-panel .card-body>p{font-size:11px;line-height:1.8}.routing-panel .card-body>p:first-child{color:#3c6268}.routing-panel a{font-size:10px;color:#1c8a75}.routing-panel td button{font-size:10px}.routing-panel .check-label{font-size:10px}.schedule-driver{background:#f7faf9;padding:20px 23px}.schedule-driver strong{font-family:Manrope;font-size:12px}.schedule-driver small{font-size:10px}.schedule-driver .metrics{font-size:10px}.footer-note{font-size:9px;letter-spacing:.5px;color:#94a5a8;margin-top:35px}.form-grid label{font-size:11px}.setup-details>summary{font-size:12px}.preload-label{font-size:10px}.top-note{font-size:11px}.top-note .muted{font-size:11px}.cloud-indicator{font-size:10px}.report-input{background:#f9fbfa;color:#526e76;border-color:#dfe8e8}.import-file{font-size:10px}.card-head .search-input{font-size:11px;max-width:230px}#dispatch-notes{min-height:90px;font-size:12px}dialog h2{color:#173f44}dialog{border-radius:15px}.topbar-actions .small{font-size:10px}.topbar-actions .primary{background:#166b60}.table-scroll td>.meter{margin-right:15px}body.print-report .page-heading p:after{content:' · '}.print-company{display:none}
.dashboard-grid>*,.lab-grid>*{min-width:0}.overview-banner>div:first-child{min-width:0}.card-head>div{min-width:0}.insight>span:nth-child(2){min-width:0}
@media(min-width:701px){.sidebar{padding-top:24px}.brand{padding-bottom:24px}.nav-button{min-height:40px;padding-top:10px;padding-bottom:10px}.sidebar-bottom{margin-top:18px;padding-top:12px}.sidebar-bottom .version{margin-top:9px}}
@media(min-width:1700px){.workspace{padding-top:42px}}
@media(max-width:1200px){.shell{grid-template-columns:205px minmax(0,1fr)}.workspace{padding:28px 24px}.topbar{padding:0 24px}.dashboard-grid{grid-template-columns:minmax(0,1.3fr) minmax(270px,1fr)}.lab-grid{grid-template-columns:1fr}.planning-controls .card-body{flex-wrap:wrap}.planning-controls .card-body>div{flex:1}.page-heading h1{font-size:28px}.stat strong{font-size:27px}.stat{padding:18px}}
@media(max-width:950px){.dashboard-grid{grid-template-columns:1fr}.overview-banner h2{font-size:22px}.overview-banner{padding:26px}.coverage-ring{width:100px;height:100px}.coverage-ring>span{width:85px;height:85px}.save-state{display:none}.page-heading{flex-wrap:wrap}.stats{gap:12px}.stat-label{font-size:9px}.stat small{font-size:9px}.sidebar{padding:24px 12px}.nav-button{font-size:11px;padding:11px}.brand{font-size:21px}}
@media(max-width:700px){.shell{display:block}.sidebar{position:static;height:auto;padding:16px 13px 10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;overflow:visible}.brand{grid-column:1/-1;padding:0 4px 17px}.brand svg{width:28px}.brand small{font-size:7px}.sidebar .nav-label,.sidebar-bottom{display:none}.nav-button{font-size:10px;padding:9px 7px;min-height:36px;gap:6px}.nav-icon{display:inline-flex;width:14px}.nav-icon svg{width:14px}.topbar{height:auto;min-height:62px;padding:12px 15px}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;width:100%;gap:6px}.company-select{max-width:190px;min-height:33px}.workspace{padding:23px 15px 35px}.page-heading{gap:17px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.heading-actions{gap:7px;width:100%}.heading-actions button{font-size:11px;flex:auto}.overview-banner{padding:23px 20px;gap:12px}.overview-banner h2{font-size:19px;max-width:250px;line-height:1.4}.overview-banner p{font-size:10px}.coverage-ring{width:78px;height:78px}.coverage-ring>span{height:65px;width:65px}.coverage-ring strong{font-size:20px}.coverage-ring small{font-size:5px;letter-spacing:.4px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.stat{padding:17px}.stat strong{font-size:27px}.stat strong em{font-size:12px}.stat small{font-size:9px}.stat-label{font-size:9px}.card-head{padding:17px}.card-head h3{font-size:12px}.card-body{padding:17px}.card-head p{font-size:10px}.hour-chart{padding-left:16px;padding-right:16px;gap:6px}.hour-column{min-width:24px}.bar-pair{gap:3px}.report-tabs{width:100%}.report-tabs button{padding:10px 12px;font-size:10px}.lab-grid{grid-template-columns:1fr}.planning-controls .card-body{gap:13px}.planning-controls label{width:100%}.planning-controls strong{font-size:10px}.planning-controls small{font-size:9px}.planning-controls button{font-size:10px;flex:1}.steps{gap:8px;font-size:9px}.card-head .search-input{max-width:150px}.workload-item strong{font-size:11px}.timeline-legend{gap:12px;font-size:9px}.top-note{font-size:10px}.top-note .muted{font-size:10px}.cloud-indicator{display:none}.empty{padding:33px 20px}.day-preload{grid-template-columns:repeat(2,minmax(0,1fr))}th{font-size:8px;padding:11px 13px}td{font-size:10px;padding:13px}.cell-detail{font-size:9px}.lab-grid .form-grid{gap:15px}details.card>summary{padding:16px;font-size:11px}.routing-panel .card-body>p{font-size:10px}}
@media print{.sidebar,.topbar,.overview-banner,.report-tabs,.planning-controls,.timeline-legend,#toast,.top-note,.footer-note,.routing-panel,.heading-actions,button{display:none!important}.shell{display:block}.workspace{padding:0;max-width:none}.page-heading h1{font-size:22px}.card{box-shadow:none;break-inside:avoid}.dashboard-grid,.lab-grid{display:block}.stats{grid-template-columns:repeat(4,1fr)}body{background:#fff;color:#000}.page-heading{margin:0 0 15px}.card-head{padding:12px}.schedule-driver{background:#f4f5f5!important}.stat{padding:12px}.stat strong{font-size:22px}td{padding:8px;font-size:9px}th{padding:8px;font-size:8px}.table-scroll{overflow:visible}.timeline-scroll{overflow:visible}.timeline{min-width:0}.timeline-row,.timeline-header{grid-template-columns:130px 1fr;padding:0 12px}.insight-list button{display:flex!important}.card-head input{display:none}a{color:inherit;text-decoration:none}details:not([open]){display:none}.overview-banner+ .stats{margin-top:10px}}
