.map-metrics{display:flex;gap:24px;flex-wrap:wrap;padding:14px 0 25px;color:var(--muted);font-size:13px}.map-metrics b{font-size:21px;color:var(--text);margin-right:5px}.map-tracking-state{margin-left:auto;display:flex;align-items:center;gap:8px}.map-tracking-state i{width:7px;height:7px;background:#8b949e;border-radius:50%}.network-map-layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:18px;align-items:start}.map-directory{overflow:hidden;margin:0;position:sticky;top:14px}.map-directory-head{padding:18px 15px 10px}.map-directory h2{margin:0 0 15px;font-size:16px}.map-directory input{width:100%;box-sizing:border-box}.map-filters{display:flex;flex-wrap:wrap;gap:4px;margin-top:12px}.map-filters button{padding:5px 8px;font-size:11px;background:transparent}.map-filters button[aria-pressed=true]{background:#1f6feb;color:white;border-color:#388bfd}.map-location-list{max-height:620px;overflow:auto}.map-location{width:100%;display:flex;align-items:flex-start;gap:10px;border:0;border-bottom:1px solid var(--border);border-radius:0;background:transparent;text-align:left;padding:14px 16px;color:var(--text)}.map-location:hover,.map-location.selected{background:rgba(56,139,253,.1)}.map-location.selected{box-shadow:inset 3px 0 #388bfd}.map-location b{display:block;font-size:12px}.map-location small{display:block;color:var(--muted);font-size:11px;line-height:1.7}.map-directory-foot{padding:14px;font-size:11px;color:var(--muted);border-top:1px solid var(--border)}.map-main{min-width:0}.map-canvas-card{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:18px;background:var(--panel)}.map-toolbar,.map-canvas-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 14px;font-size:11px;color:var(--muted)}.map-toolbar>span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.map-toolbar button{font-size:11px;padding:5px 10px}.map-kind-dot{display:inline-block;width:8px;height:8px;background:#388bfd;border-radius:50%;flex-shrink:0;margin-top:4px}.map-kind-dot.pickup{background:#d29922}.map-kind-dot.hotspot{background:#a371f7}.map-kind-dot.home{background:#3fb950}.map-kind-dot.both{background:#39c5cf}#network-map{height:510px;background:#d9e0e7;z-index:0}#network-map.placing{cursor:crosshair}.network-pin{background:none;border:0}.network-pin span{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:10px 10px 10px 0;transform:rotate(-45deg);background:transparent;border:0;box-shadow:none;color:var(--location-color,#388bfd);font:bold 16px system-ui}.network-pin.selected span{box-shadow:0 0 0 5px #388bfd40,0 3px 9px #0006}.network-pin.editing span{background:transparent;color:var(--location-color,#388bfd);border:0;box-shadow:0 0 0 5px #f0883e33}.map-editor h2{font-size:18px;margin:5px 0}.map-editor .card-head{align-items:flex-start}.map-editor .card-body>label{display:block;margin-bottom:15px}.map-editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.map-editor-fields input{width:100%;box-sizing:border-box}.map-editor-fields .check-label input{width:auto}.map-pin-actions{display:flex;gap:8px;flex-wrap:wrap}.map-pin-actions button{font-size:12px}.map-editor .heading-actions{margin:16px 0}.map-silo-chips{display:flex;gap:7px;flex-wrap:wrap;margin:15px 0}.map-silo-chips span{border:1px solid var(--border);border-radius:5px;padding:6px 8px;font-size:11px;color:var(--muted)}.map-service-note{padding:10px;color:#9a6700;background:#fff8c5;font-size:12px}.map-editor small{color:var(--muted)}[data-theme=dark] #network-map.map-street .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) saturate(.45) brightness(.85)}[data-theme=dark] .leaflet-control-attribution{background:#0d1117e6;color:#c9d1d9}[data-theme=dark] .leaflet-control-attribution a{color:#58a6ff}[data-theme=dark] .leaflet-bar a{background:#161b22;color:#c9d1d9;border-color:#30363d}.map-canvas-foot a{color:var(--muted)}@media(max-width:1000px){.network-map-layout{grid-template-columns:225px minmax(0,1fr)}#network-map{height:440px}}@media(max-width:760px){.network-map-layout{grid-template-columns:1fr}.map-directory{position:static}.map-location-list{max-height:200px}.map-editor-fields{grid-template-columns:1fr}.map-metrics{gap:12px}.map-tracking-state{margin-left:0}.map-canvas-foot{align-items:flex-start}#network-map{height:400px}.map-toolbar>span{gap:5px}}

.map-view-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.map-basemaps{display:flex;border:1px solid var(--border);border-radius:6px;overflow:hidden}.map-basemaps button{border:0;border-radius:0;padding:7px 11px;background:transparent}.map-basemaps button[aria-pressed=true]{background:#1f6feb;color:white}.map-toolbar{flex-wrap:wrap}#network-map{height:600px;touch-action:none}.map-canvas-card.map-expanded{position:fixed;inset:16px;z-index:1500;display:flex;flex-direction:column;box-shadow:0 0 0 100vmax #0009}.map-expanded #network-map{height:auto;flex:1;min-height:0}.map-expanded .map-canvas-foot{flex-shrink:0}.map-expanded .map-toolbar{flex-shrink:0}.map-expanded .map-service-note{flex-shrink:0}@media(max-width:760px){#network-map{height:480px}.map-canvas-card.map-expanded{inset:6px}.map-expanded #network-map{height:auto}.map-view-controls{gap:4px}.map-toolbar>span{font-size:10px}.map-toolbar button{padding:6px 8px}}
.truck-location-pin{background:#30363d;color:#fff;border:2px solid #9da7b3;border-radius:8px;text-align:center;box-shadow:0 2px 8px #0008;font-weight:800;line-height:18px}.truck-location-pin span{display:block;font-size:22px}.truck-location-pin small{display:block;font-size:10px;line-height:14px}.truck-location-pin.live{background:#f5bf24;color:#18212d;border-color:#fff}.truck-location-pin.stale{opacity:.65}
.driver-download{display:inline-block;border:1px solid var(--border,#30363d);border-radius:8px;padding:10px 14px;text-decoration:none;font-size:12px;font-weight:700;color:var(--text,#f0f6fc);background:var(--panel,#161b22)}.driver-download.primary{background:#f5bf24;color:#17202a;border-color:#f5bf24}.sidebar-bottom .driver-download{margin-bottom:18px;color:inherit}#truck-live-map{height:65vh;min-height:460px;background:#18212d;z-index:0;touch-action:none}.map-expanded #truck-live-map{height:auto;flex:1;min-height:0}[data-theme=dark] #truck-live-map.map-street .leaflet-tile-pane{filter:invert(.92) hue-rotate(180deg) saturate(.45) brightness(.85)}@media(max-width:760px){#truck-live-map{height:58vh;min-height:350px}.map-expanded #truck-live-map{height:auto;min-height:0}}

.hotspot-corner-handle{background:#fff;border:2px solid #f0883e;border-radius:2px;box-shadow:0 1px 4px #0009;cursor:nwse-resize}#map-rectangle-tools{margin:14px 0}#map-rectangle-tools[hidden],#map-radius-label[hidden]{display:none}

.hotspot-midpoint-handle{background:#fff;color:#17202a;border:1px solid #64748b;border-radius:50%;font:bold 13px/15px system-ui;text-align:center;cursor:crosshair}#map-polygon-tools{margin:14px 0}#map-polygon-tools[hidden]{display:none}
.fleet-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;align-items:start}.fleet-map-main{min-width:0}.fleet-rail{margin:0;overflow:hidden}.fleet-rail-head{padding:18px;border-bottom:1px solid var(--border)}.fleet-rail-head h2{font-size:18px;margin:6px 0}.fleet-rail-head p,.fleet-rail-head small{color:var(--muted);font-size:11px;line-height:1.6}#fleet-list{max-height:65vh;overflow:auto}.fleet-item{padding:15px 18px;border-bottom:1px solid var(--border)}.fleet-item-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px}.fleet-item>b{font-size:12px}.fleet-item p{font-size:12px;margin:6px 0;color:var(--muted)}.fleet-item small{display:block;font-size:11px;color:var(--muted)}.fleet-load{font-size:12px;border-left:2px solid #d29922;padding-left:9px;margin:10px 0}.fleet-item button{font-size:11px;padding:5px 8px}.fleet-dot{height:8px;width:8px;border-radius:50%;background:#8b949e}.fleet-dot.live{background:#3fb950;box-shadow:0 0 0 4px #3fb95020}.fleet-dot.danger{background:#f85149}.fleet-item.out-of-service{border-left:3px solid #f85149}.bulker-location-pin{border:0;background:none;text-align:center}.bulker-bubble{background:#161b22f2;color:#f0f6fc;border:1px solid #596777;border-radius:8px;padding:6px 8px;box-shadow:0 3px 12px #0007;font:11px/1.4 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bulker-bubble b,.bulker-bubble span,.bulker-bubble small{display:block;overflow:hidden;text-overflow:ellipsis}.bulker-bubble b{color:#f5bf24;font-size:12px}.bulker-bubble small{font-size:9px;color:#c9d1d9}.bulker-vehicle{width:100px;margin:1px auto;filter:drop-shadow(0 2px 3px #0009)}.bulker-location-pin.stale .bulker-vehicle{filter:grayscale(1) drop-shadow(0 2px 3px #0009)}.bulker-location-pin.live .bulker-bubble{border-color:#d29922}@media(max-width:1050px){.fleet-layout{grid-template-columns:minmax(0,1fr) 245px}}@media(max-width:800px){.fleet-layout{grid-template-columns:1fr}#fleet-list{max-height:380px}.fleet-rail{margin-bottom:18px}}

/* Compact map marker using the same yellow bulker artwork as playback. */
.bulker-bubble{padding:4px 6px;font-size:10px;line-height:1.3}.bulker-bubble b{font-size:11px}.bulker-bubble small{font-size:9px}.bulker-vehicle{width:72px;height:26px;margin:2px auto}.bulker-vehicle svg{display:block;width:100%;height:100%}
.map-canvas-card{position:relative}.map-inline-editor{position:absolute;z-index:1000;right:14px;top:62px;width:310px;max-width:calc(100% - 28px);max-height:calc(100% - 106px);overflow-y:auto;box-shadow:0 12px 40px #0008;margin:0!important;background:var(--panel,#161b22)}.map-inline-editor[hidden],#map-edit[hidden],#map-finish-polygon[hidden],#map-cancel-draw[hidden],#map-draw-polygon[hidden],#map-draw-rectangle[hidden]{display:none!important}.map-inline-editor .card-head{padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:10px}.map-inline-editor .card-head h2{font-size:14px;line-height:1.4;margin:4px 0}.map-inline-editor .card-body{padding:16px;display:grid;gap:13px}.map-inline-editor .card-body>label{margin:0}.map-inline-actions,.map-inline-save{display:flex;gap:9px;flex-wrap:wrap}.map-inline-actions button,.map-inline-save button{flex:1;font-size:11px;padding:9px}.map-inline-save{padding-top:12px;border-top:1px solid var(--border,#30363d);position:sticky;bottom:-16px;background:var(--panel,#161b22);padding-bottom:8px}.map-inline-editor #map-polygon-tools,.map-inline-editor #map-rectangle-tools{margin:0;display:flex;gap:8px;flex-wrap:wrap}.map-inline-editor #map-edit-hint{margin:0;font-size:11px;line-height:1.6}.map-inline-editor .map-advanced{font-size:11px;padding-top:4px}.map-inline-editor .map-editor-fields{grid-template-columns:1fr 1fr;margin:12px 0;gap:10px}.map-inline-editor .map-editor-fields label{font-size:10px}.map-inline-editor .map-editor-fields input{min-width:0}.map-inline-editor #map-cancel-draw{justify-self:start}@media(max-width:700px){.map-inline-editor{left:10px;right:10px;top:auto;bottom:38px;width:auto;max-width:none;max-height:47%}.map-inline-editor .card-head{padding:9px 12px}.map-inline-editor .card-body{padding:12px;gap:10px}.map-inline-save{bottom:-12px}.map-toolbar .map-view-controls{flex-wrap:wrap}}
.map-inline-editor [hidden]{display:none!important}
.network-pin span,.network-pin.selected span,.network-pin.editing span{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0;transform:rotate(-45deg);color:var(--location-color,#388bfd);font-size:16px;text-shadow:0 1px 3px #000}.network-pin{--location-color:#388bfd;background:transparent!important;border:0!important;box-shadow:none!important}.network-pin.pickup{--location-color:#d29922}.network-pin.parking,.network-pin.hotspot{--location-color:#a371f7}.network-pin.home{--location-color:#3fb950}.network-pin.both{--location-color:#39c5cf}.network-pin.selected span{filter:drop-shadow(0 0 4px currentColor)}.map-kind-dot.parking{background:#a371f7}.map-new-fields{display:grid;gap:12px;padding-top:12px}.map-new-fields small{font-size:10px;color:var(--muted)}.map-new-fields select[multiple]{min-height:85px}@media(min-width:761px){.network-map-layout{align-items:stretch;min-height:600px;height:clamp(600px,76vh,850px)}.map-directory{position:relative;top:auto;height:100%;display:flex;flex-direction:column;min-height:0;box-sizing:border-box}.map-directory-head,.map-directory-foot{flex-shrink:0}.map-location-list{flex:1;min-height:0;max-height:none}.map-main{display:flex;min-height:0;height:100%}.map-main>.map-canvas-card{width:100%;height:100%;display:flex;flex-direction:column;box-sizing:border-box;margin:0}.map-main #network-map{height:auto;flex:1;min-height:0}.map-toolbar,.map-canvas-foot{flex-shrink:0}}
.map-main>.map-canvas-card.map-expanded{height:auto;width:auto;min-height:0}

.network-pin.pickup span{transform:none!important}.network-pin.pickup svg{display:block;overflow:visible;filter:drop-shadow(0 1px 1px #000) drop-shadow(0 0 2px #000);color:#f2cc60}

.fleet-operation{font-weight:650;color:#58a6ff}.fleet-operation[data-operation="unavailable"],.fleet-operation[data-operation="breakdown"]{color:#ff7b72}.fleet-operation[data-operation="attention"]{color:#e3b341}.fleet-operation[data-operation="available"]{color:#56d364}.fleet-operation[data-operation="off_duty"]{color:var(--muted)}

.fleet-operation{font-weight:650;color:#58a6ff}.fleet-operation[data-operation="unavailable"],.fleet-operation[data-operation="breakdown"]{color:#ff7b72}.fleet-operation[data-operation="attention"]{color:#e3b341}.fleet-operation[data-operation="available"]{color:#56d364}.fleet-operation[data-operation="off_duty"]{color:var(--muted)}

.fleet-operation{font-weight:650;color:#58a6ff}.fleet-operation[data-operation="unavailable"]{color:#ff7b72}.fleet-operation[data-operation="attention"]{color:#e3b341}.fleet-operation[data-operation="available"]{color:#56d364}.fleet-operation[data-operation="off_duty"]{color:var(--muted)}

.fleet-item button{margin-top:8px;margin-right:8px}
