/* Snow Command Center: shared desktop, tablet and phone layout. */
.dispatch-layout header{height:80px;min-height:80px;flex-wrap:nowrap;gap:16px}
.dispatch-layout header .brand{min-width:0;flex-shrink:1}
.dispatch-layout header nav{gap:12px;flex-wrap:nowrap;width:auto}
.dispatch-layout header .brand small{letter-spacing:1.4px}
.dispatch-layout .dispatch-rail{top:80px;overflow-y:auto;padding:22px 14px}
.dispatch-layout .dispatch-rail nav{margin:14px 0;gap:5px}
.dispatch-layout .dispatch-rail button{padding:12px 14px;min-height:44px}
.dispatch-layout .page-heading{align-items:flex-end;gap:16px;margin-bottom:18px}
.dispatch-layout .page-heading>.row{align-items:flex-end;flex-shrink:0}
.dispatch-layout .page-heading label{display:grid;gap:5px;flex:0 1 190px}
.dispatch-layout .page-heading input{margin:0;min-height:42px}
.dispatch-layout .page-heading button{min-height:42px}
.dispatch-layout #connection{font-size:12px;line-height:1.5;color:var(--cc-muted)}
.desk-page{min-width:0}
.desk-page>.eyebrow,.desk-page>h2{display:none}
.desk-actions{gap:10px;margin:16px 0 22px}
.desk-actions button,.desk-actions .button{padding:14px 18px;line-height:1.4}
.dispatch-layout #notice{padding:10px 14px;font-size:13px;line-height:1.5;margin-bottom:16px}
.dispatch-layout #fleetSection{min-width:0;padding:18px;border:1px solid var(--cc-line);border-radius:12px;background:var(--cc-panel)}
.dispatch-layout .fleet-card{border-radius:9px}
.live-shortcuts{flex-wrap:wrap}
.live-shortcuts button{min-height:42px}
.planning-steps{gap:12px;margin-bottom:18px}
.planning-steps article{padding:18px}
.planning-steps h3{font-size:18px;margin:12px 0 6px}
.customer-manager{margin:18px 0;padding:20px}
.customer-manager h3{margin-top:0;font-size:17px}
#customerPropertyChoices{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.form-grid>*{min-width:0}
.form-grid select,dialog select{max-width:100%;width:100%}
.inline-check{align-items:center}
.inline-check input[type=checkbox]{flex:0 0 18px;width:18px;height:18px;margin:0}
button,.button{touch-action:manipulation}
:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--cc-accent);outline-offset:3px}
dialog{max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
dialog>.row:first-child{align-items:center;justify-content:space-between;gap:12px}
dialog>.row:first-child h2{font-size:23px;flex:1;min-width:0}
dialog .form-grid label{margin:8px 0}
.table-scroll{max-width:100%;overscroll-behavior-x:contain}
.activity-body{min-width:0;overflow-wrap:anywhere}
.asset-body,.route-track,.fleet-card{overflow-wrap:anywhere}
html[data-theme=dark] .desk-actions :is(button,.button){background:var(--cc-panel);color:var(--cc-text)}
html[data-theme=dark] #notice{background:#30472c;color:#e7f2d7}
html[data-theme=dark] .customer-manager :is(input,select){background:var(--cc-soft);color:var(--cc-text)}
@media(max-width:1100px){
 .dispatch-layout header{height:auto;min-height:72px;padding:12px 18px;flex-wrap:wrap;gap:10px}
 .dispatch-layout header nav{margin-left:auto;gap:8px}
 .dispatch-layout header nav>a{display:none}
 .dispatch-layout .ops-shell{padding:0 18px 24px}
 .dispatch-layout .dispatch-rail{position:static;width:auto;padding:10px 0 0;border:0;background:transparent;overflow:visible;gap:0}
 .dispatch-layout .dispatch-rail>.eyebrow,.dispatch-layout .dispatch-rail>.muted{display:none}
 .dispatch-layout .dispatch-rail nav{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;max-width:100%;margin:0 0 18px;padding:3px 0 8px;gap:5px;scrollbar-width:thin}
 .dispatch-layout .dispatch-rail button{flex:0 0 auto;white-space:nowrap;color:var(--cc-text);background:var(--cc-panel);border:1px solid var(--cc-line);font-size:13px}
 .dispatch-layout .dispatch-rail button[aria-current=page]{background:#b9d58b;color:#142d21;border-color:#b9d58b}
 .dispatch-layout .page-heading{flex-direction:row;align-items:flex-end;flex-wrap:wrap}
 .dispatch-layout .page-heading>.row{max-width:100%;flex-wrap:wrap}
 .planning-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
 .live-workspace{grid-template-columns:1fr}
 .dispatch-layout #fleet{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));max-height:none}
 .insights-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
 .dispatch-layout header{padding:10px 14px}
 .dispatch-layout .company-logo{width:110px}
 .dispatch-layout header .brand span{display:none}
 .dispatch-layout header nav{margin-left:auto}
 .dispatch-layout header button{padding:8px 10px;font-size:12px;min-height:40px}
 .dispatch-layout .ops-shell{padding:0 12px 20px}
 .dispatch-layout .page-heading h1{font-size:25px}
 .dispatch-layout .page-heading>.row{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;gap:8px}
 .dispatch-layout .page-heading #newRoute{grid-column:1/-1}
 .dispatch-layout .page-heading label{min-width:0}
 .planning-steps{grid-template-columns:1fr}
 .planning-steps article{display:grid;grid-template-columns:32px 1fr;column-gap:12px;padding:14px}
 .planning-steps h3{margin:3px 0 6px}.planning-steps p{grid-column:2}
 .desk-actions{display:grid;grid-template-columns:1fr 1fr}
 .desk-actions>*{text-align:center;min-width:0;font-size:13px}
 .dispatch-layout .storm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
 .dispatch-layout .storm-overview{padding:12px}
 .dispatch-layout .storm-overview h2{font-size:18px}
 .live-map,.dispatch-layout #fleetSection{padding:12px}
 .live-map #shiftMap{height:360px;min-height:300px}
 .live-map>.row{flex-wrap:wrap}.live-map select{min-width:0;max-width:100%}
 .live-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .live-shortcuts button{font-size:12px;padding:9px}
 .live-shortcuts button:last-child{grid-column:1/-1}
 .form-grid,.customer-manager .form-grid{grid-template-columns:1fr}
 .customer-manager{padding:14px}
 .property-gallery,.camera-grid{grid-template-columns:minmax(0,1fr)}
 .activity-card{flex-wrap:wrap;gap:8px}.activity-card time{margin-left:42px}
 dialog{width:calc(100% - 16px);padding:16px;max-height:calc(100dvh - 16px)}
 dialog>.row:first-child h2{font-size:20px}
 input,select,textarea{font-size:16px}
}
@media(min-width:1101px){.dispatch-layout .page-heading>.row{flex-wrap:nowrap}.dispatch-layout .page-heading label{flex:0 0 180px}.dispatch-layout .page-heading button{white-space:nowrap}}
#desk-planning>p.muted{margin:10px 0 16px}
@media(max-width:1100px){html[data-theme=dark] .dispatch-layout .dispatch-rail{background:transparent}html[data-theme=dark] .dispatch-layout .dispatch-rail button{background:var(--cc-panel);color:var(--cc-text)}html[data-theme=dark] .dispatch-layout .dispatch-rail button[aria-current=page]{background:#b9d58b;color:#142d21}}
/* Insights: concise daily totals, prioritized checks and consistent route cards. */
.insight-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}
.insight-metric{display:grid;gap:7px;padding:18px;background:var(--cc-panel);border:1px solid var(--cc-line);border-radius:12px;min-width:0}
.insight-metric>span{font-size:13px;font-weight:600;color:var(--cc-muted)}
.insight-metric>strong{font-size:30px;line-height:1.15;font-variant-numeric:tabular-nums}
.insight-metric>small{font-size:11px;color:var(--cc-muted);line-height:1.5}
.insight-filters{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.insight-filters button{font-size:12px;min-height:40px;border-radius:20px;padding:8px 14px}
.insight-filters button[aria-pressed=true]{background:var(--cc-text);color:var(--cc-panel);border-color:var(--cc-text)}
#desk-insights .insights-grid{align-items:start;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}
#desk-insights .insights-grid>section{padding:20px;border-radius:14px}
#desk-insights h2{font-size:18px;margin:0 0 16px}
.insight-card{margin:10px 0;padding:16px;gap:7px;border-radius:10px;box-shadow:none}
.insight-card p{margin:0;line-height:1.5}.insight-card strong{font-size:15px}
.insight-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:var(--cc-muted)}
.insight-card button{margin-top:5px;min-height:38px}
.insight-row{display:grid;gap:9px;border:1px solid var(--cc-line);border-left:4px solid var(--route-color);border-radius:10px;padding:16px;margin:10px 0;background:var(--cc-soft)}
.insight-row h3,.insight-row p{margin:0}.insight-row p{font-size:13px;line-height:1.5}
.insight-row progress{width:100%;height:8px;accent-color:var(--route-color)}
.insight-row button{justify-self:start;min-height:38px;font-size:12px}
.dispatch-layout .panel h2{line-height:1.3}.fleet-card h3{line-height:1.25}
.dispatch-layout .fleet-card .row{gap:7px}.dispatch-layout .fleet-card button{min-height:36px}
.dispatch-layout #endedRouteHistory>article{margin-top:12px}
@media(max-width:1100px){#desk-insights .insights-grid{grid-template-columns:1fr}}
@media(max-width:600px){.insight-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.insight-metric{padding:14px}.insight-metric>strong{font-size:26px}#desk-insights .insights-grid>section{padding:14px}.insight-filters{gap:6px}.insight-filters button{padding:7px 10px}}
